VisaLark

文档

从安装到安全模型的一切。

快速开始

VisaLark 的数据面(浏览器扩展或本地 Agent)跑在你自己的住宅网络上,复用你已登录的签证网站会话。四步即可运行:

  1. 在 Chrome / Edge 安装 VisaLark 扩展(从 Releases 下载 .zip,解压后用“加载已解压的扩展程序”加载)。
  2. 在同一个浏览器里像平时一样登录 usvisa-info——VisaLark 不会替你保存密码。
  3. 打开扩展面板,新建一个监控:选择领馆(可多选)、签证类型、可接受日期范围、星期与时段过滤。
  4. 配置通知渠道(Bark / Server酱 / Telegram / Webhook),选择预约模式(默认“仅通知”),保存即开始监控。

安全模型

预约网站前面有 Cloudflare 和 reCAPTCHA。轮询频率当然有影响,但我最担心的信号是请求来源和登录地不一致。

为什么数据面必须跑在你的住宅网络

如果你从中国住宅 IP 登录,同一会话却从云数据中心 IP 拉取名额接口,这看起来像账号被盗用或自动化操作,真实的签证账号可能因此被限制。因此所有触碰 usvisa-info 的代码都只在你登录的地方运行,不在云服务器上轮询。

不存密码,不做绕过

  • 默认只用 Cookie / 会话复用,不存签证密码;控制面完全不接触凭据。
  • 仓库内没有代理轮换、指纹伪造、验证码破解、TLS 伪装等绕过代码。
  • 遇到 Turnstile、403、验证码或会话过期(401)时暂停并提醒你;被限速(429、1015)时长时间退避。不会尝试绕过。

预约模式与自动改签联锁

每个监控可独立选择三种模式之一:

  • 仅通知(notify,默认):发现名额只推送,由你手动预约。风险最低。
  • 一键确认(confirm):通知里带一个按钮,打开确认页,点一下就用你已登录的浏览器会话改期。实验性功能。本地 Agent 没有确认页,会把 confirm 当作 notify 处理。
  • 自动改签(auto):默认关闭,满足联锁条件时无人值守自动改签。风险高。

auto 模式的联锁(开启时强制生效)

  • 严格更优:仅当新日期早于当前日期(可配置最小提前量,如 ≥7 天)且领馆在白名单内、且匹配日期/星期/时段过滤时才改签。
  • 绝不盲目放弃:usvisa-info 改签会替换现有预约,前 N 次(confirmFirstN,默认 1)即使在 auto 模式也需人工确认。
  • 幂等锁:防止重复提交 / 重复预约。
  • 每日预约上限 + 全局急停开关 + 试运行(dry-run)模式。

通知渠道

VisaLark 大陆优先、多渠道、冗余推送。高优先级名额事件会同时扇出到所有已配置渠道,单个渠道挂掉不会吞掉名额提醒。

  • Bark(iOS):大陆可达,高优先级使用 time-sensitive 中断级别 + 警报声。
  • Server酱 / 微信:大陆可达,自动适配 SCT / SCTP key。
  • Telegram:海外 / 技术选项,大陆需代理。
  • Webhook:覆盖企业微信机器人 / Discord / Slack / 自定义中转。

自托管控制面(可选)

控制面是可选的,不保存任何签证凭据,也从不访问 usvisa-info。它记录你的监控看到过的可约日期,按星期和小时统计新日期首次出现的时间(热力图),并可以转发通知(让渠道密钥留在你的服务器而非页面里)。任何装了 Docker 的 Linux 机器或小型 VM 都可以运行。

一行安装

curl -fsSL https://raw.githubusercontent.com/appleweiping/visa-lark/master/apps/control-plane/install.sh | bash

脚本会在缺失时安装 Docker,提示你输入(或自动生成)DASHBOARD_TOKEN,运行 docker compose,等待健康检查并打印 URL。

推荐入口:Cloudflare Tunnel

不要直接对公网开放 8787 端口。使用 Cloudflare Tunnel——无需开放入站端口、免费 TLS、隐藏 VM 真实 IP。docker-compose.yml 中已附带 cloudflared 服务模板。

常见问题 FAQ

它能保证我抢到最热门领馆的名额吗?

不能,我也不这么承诺。几秒内就被抢光的名额通常要靠付费住宅代理 IP 池去拼,这会增加账号被限制的风险。VisaLark 帮你发现那些本会错过的新号,并刻意不用这些手段;但自动访问本身仍有风险,见 README 的警告。

需要我提供签证账号密码吗?

不需要。默认只复用你浏览器里已登录的会话。它从不要求、也不存储签证密码。

可以跑在云服务器上 24 小时监控吗?

和签证网站打交道的部分不行:从云 IP 轮询正是这个项目想避免的情况。本地 Agent 适合跑在你家里的电脑或树莓派上(住宅网络)。只有不接触凭据的控制面可以放到云上。

支持哪些领馆?

内置覆盖中国(北京/成都/广州/上海/沈阳/武汉)、香港、东京、大阪、首尔、新加坡等常见领馆,你也可以在 UI 里自行添加 facility id。