Skip to content

Repository files navigation

NadePilot 标志

NadePilot

CS2 道具检索、交互地图与训练复习的 Windows 桌面应用

本地优先 · 即时筛选 · 按需媒体 · 可选 AI 查询

NadePilot 把 CS2 道具索引保存在本地,通过地图雷达、分步教程和训练计划,帮助你快速找到、学习并复习投掷点。图片和视频只在需要时从云端加载;AI 查询是完全可选的。

当前随源码附带的目录库快照覆盖 8 张地图、1,237 条道具、7,390 张参考图和 1,237 段视频。这些数字会随在线目录库更新而变化。

核心能力

能力 说明
本地检索 使用 SQLite/FTS5 快速检索名称、点位和战术词;可组合筛选地图、阵营、投掷物、投掷方式、难度、起点、落点和训练状态。
交互地图 从地图雷达上的投掷点或落点进入教程,也可按道具类型和区域逐层缩小范围。
完整教程 每颗道具提供站位、瞄准、投掷、落点四步参考图,并可播放演示视频、查看标签和坐标。
训练闭环 收藏常用道具,标记必学、已掌握和待复习;训练中心会把复习内容集中到当天计划。
可选 AI 连接任意 OpenAI 兼容接口后,可用自然语言描述需求、连续追问,并让应用从本地候选中推荐一颗道具。关闭 AI 后仍可使用全部本地搜索。
稳定更新 目录库和应用更新均会先核对版本、文件大小和 SHA-256;已有有效目录库时,即使更新失败也能继续检索。

数据、网络与隐私

NadePilot 的本地数据目录为:

%LOCALAPPDATA%\app.nadepilot.desktop
内容 保存或传输方式
catalog.sqlite3 从云端下载的只读目录库,保存道具字段、检索索引与媒体相对路径。目录自动同步默认开启;已有目录库时可在设置中关闭,首次缺库时仍会下载。
user.sqlite3 本地可写,保存设置、最近查询、收藏和训练进度。更新目录库不会清除这些数据;只要道具永久 ID 保持不变,训练状态会延续。
图片 Hugging Face 镜像桶 按需获取;应用会缓存图片以便复用,缓存最长保留 7 天、总量不超过 512 MiB。
视频 按需播放;应用本身不为视频建立持久缓存。
AI API 密钥 不写入 SQLite。在 Windows 上保存到系统凭据管理器。

首次获取目录库、浏览未缓存媒体、检查更新和使用 AI 都需要网络。已经有有效本地目录库时,离线仍能进行本地检索和查看已缓存内容。

AI 查询会发送什么

AI 默认关闭。启用后,在“设置 → AI 查询”中填写 OpenAI 兼容的 API 地址、模型和密钥即可。

  • 应用会把你的提问与本次对话上下文发送到你配置的服务,用于生成受校验的筛选条件。
  • 当你要求“推荐一颗”时,应用还会发送本地候选的文字属性,例如名称、地图、阵营、投掷方式、起点和落点。
  • 图片、视频路径、收藏、掌握和待复习等个人训练状态不会发送给 AI 服务;AI 也不会直接执行 SQL。

请根据所选服务商的隐私政策决定是否启用此功能。

快速开始

安装已发布版本

发布后的 Windows 安装包会提供在 Releases。若该页面尚无安装包,请按下方“开发”章节从源码构建。

  1. 如系统没有 Microsoft Edge WebView2 Runtime,程序会提示安装;也可从 微软官网 获取。
  2. 第一次启动时保持联网,等待目录库下载完成;之后即可从首页、地图或道具库开始检索。
  3. 在“设置”中可管理目录同步、应用更新、视频偏好,以及可选的 AI 查询。

应用自身更新需要可写的普通安装目录。若 EXE 位于受保护或无写权限的位置,设置页会提示先将它移动到可写目录。

开发

环境要求

  • Windows 10/11
  • Node.js ^20.19.0>=22.12.0
  • Rust stable(MSVC 工具链)
  • Visual Studio C++ Build Tools,或 Visual Studio 的“使用 C++ 的桌面开发”工作负载
  • Microsoft Edge WebView2 Runtime

无需全局安装 Tauri;常规本地开发也没有必填的 .env 文件。

启动桌面开发模式

npm ci
npm run tauri dev

npm run tauri dev 使用项目内的 Tauri CLI,运行真实的 Rust、SQLite、媒体代理和桌面功能。

仅预览网页界面

npm run dev

Vite 会固定运行在 http://localhost:1420。这个模式使用内存中的 Mock 数据和模拟媒体,不连接真实 SQLite、云端媒体或 Tauri 后端,适合纯界面调试。

构建与测试

# TypeScript 检查并构建前端到 dist/
npm run build

# 自动执行前端构建,并生成 Windows NSIS 安装包
npm run tauri build

# Rust 测试
cargo test --manifest-path .\src-tauri\Cargo.toml
cargo test --manifest-path .\catalog-builder\Cargo.toml

安装包输出到 src-tauri/target/release/bundle/nsis/。有少量访问 Hugging Face 镜像的 Rust 测试默认跳过;需要联网验证时可执行:

cargo test --manifest-path .\src-tauri\Cargo.toml -- --ignored

维护目录库与发布

目录库生成工具位于 catalog-builder/,详细参数、校验规则和发布约定请见 catalog-builder README

常规发布顺序如下:

npm ci
npm run tauri build
.\catalog-builder\build_catalog.bat 2026.08.04

生成器会校验已构建的 nadepilot.exe 与桌面端版本,并产出:

  • catalog.sqlite3
  • catalog.sqlite3.sha256
  • mainfest.json

mainfest.json 是项目当前实际使用的文件名,请勿改为 manifest.json。正式上传必须按 EXE → catalog.sqlite3mainfest.json 的顺序进行,最后发布清单,避免客户端过早发现尚未完成的版本。

项目结构

src/                 React + TypeScript 前端、页面与交互组件
src-tauri/           Tauri + Rust 后端、SQLite、AI、更新与媒体代理
public/maps/         内置地图封面、图标与雷达底图
catalog-data/        发布目录库、校验文件与更新清单
catalog-builder/     将 JSON 构建为可发布 catalog.sqlite3 的 Rust 工具
scripts/             Tauri 构建辅助脚本

平台与网络说明

  • 当前构建目标为 Windows NSIS 安装包。
  • 首次目录库下载和按需媒体加载需要能访问 Hugging Face 镜像;媒体请求由应用处理,不依赖浏览器直接跨域访问。
  • 目录同步默认开启但可以关闭;关闭后,已有本地目录库不会在启动时联网检查更新。
  • npm run dev 的浏览器演示并不代表完整桌面功能,提交问题前请优先在 npm run tauri dev 中复现。

许可证

本项目采用 MIT License

About

本地优先的 CS2 道具检索、交互地图与训练复习桌面应用。 A local-first desktop app for CS2 nade search, interactive maps, and training review.

Resources

Stars

4 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages