Estrella Pan e6d39e5624 feat: in-app notification center and LLM provider plugin framework
Two 3.3 platform features sharing core infra (notification events, DB
migrations/wiring, config model, API registration), committed together
because they cannot be split at file granularity without broken
intermediate builds.

Notification center:
- New `inboxmessage` table (migration 16) + repo with coalescing
  (unread rows with the same dedup_key increment a count; `once` kinds
  like update_available notify per-version) and 500-row pruning.
- SystemEvent contract (kind/severity/dedup_key/payload) with new
  DownloaderUnavailable / UpdateAvailable / UpdateApplied events;
  NotificationManager.send_event persists to the inbox first, then
  broadcasts to external providers only when notification.enable.
- SSE `notification` frames driven by an in-process revision counter;
  REST endpoints for list/unread-count/read/read-all/delete/clear.
- Wire-ups: qBittorrent auth now reports last_auth_error
  (credentials|banned|unreachable) and stops retrying rejected
  credentials to avoid a WebUI IP ban; the startup wait loop aborts
  early on credential errors and emits a notification; a 24h
  update-check tick surfaces new versions; apply/rollback emit results.
- WebUI bell + unread badge + dropdown inbox (severity, coalesce count,
  relative time, deep links), SSE-driven with a 30s poll fallback.

LLM provider plugin framework + subscription auth:
- LLMParser refactored to a thin facade over a provider adapter
  contract + registry; the three built-ins (openai/anthropic/gemini)
  move to adapters with zero behaviour change (existing tests unchanged).
- base_url presets for zai/minimax/deepseek/kimi (mainland + overseas)
  reusing the OpenAI-compatible adapter, with a json_object structured-
  output fallback for providers without json_schema.
- Downloadable signed plugins: catalog + installer clone the update
  system's ed25519 verify / zip-slip-guarded extract pipeline (unsigned
  refused, catalog signed against downgrade); versioned-module-name
  loader hot-loads without restart.
- Subscription auth: `llmcredential` table (migration 17) stores OAuth
  tokens server-side only (never sent to the frontend); device-flow
  auth runs a server-side polling task keyed by an opaque handle so the
  device_code stays off the wire; AuthExpiredError trips the breaker and
  notifies. Two grey-area device-flow plugins (github-copilot,
  codex-chatgpt) under plugins/, flagged at-your-own-risk.
- WebUI: grouped provider select (built-in/preset/subscription/
  downloadable), install with risk confirmation, device-flow connect
  dialog, connected-account chip.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01FAxVyRwrY7z5NotTtgnwVs
2026-07-06 09:43:45 +02:00
…
2026-07-05 12:31:12 +02:00
…
…
…

官方网站 | 快速开始 | 更新日志 | 更新推送 | TG 群组

项目说明

本项目是基于 RSS 的全自动追番整理下载工具。只需要在 Mikan Project 等网站上订阅番剧,就可以全自动追番。 并且整理完成的名称和目录可以直接被 Plex、Jellyfin 等媒体库软件识别,无需二次刮削。

AutoBangumi 功能说明

核心功能

  • 简易单次配置就能持续使用

  • 无需介入的 RSS 解析器,解析番组信息并且自动生成下载规则

  • 首次运行设置向导,7 步引导完成配置

  • 番剧文件整理:

    Bangumi
    ├── bangumi_A_title
    │   ├── Season 1
    │   │   ├── A S01E01.mp4
    │   │   ├── A S01E02.mp4
    │   │   ├── A S01E03.mp4
    │   │   └── A S01E04.mp4
    │   └── Season 2
    │       ├── A S02E01.mp4
    │       ├── A S02E02.mp4
    │       ├── A S02E03.mp4
    │       └── A S02E04.mp4
    ├── bangumi_B_title
    │   └─── Season 1
    
  • 全自动重命名,重命名后 99% 以上的番剧可以直接被媒体库软件直接刮削

    [Lilith-Raws] Kakkou no Iinazuke - 07 [Baha][WEB-DL][1080p][AVC AAC][CHT][MP4].mp4 
    >>
    Kakkou no Iinazuke S01E07.mp4
    
  • 自定义重命名,可以根据上级文件夹对所有子文件重命名。

  • 季中追番可以补全当季遗漏的所有剧集

  • 高度可自定义的功能选项,可以针对不同媒体库软件微调

  • 支持多种 RSS 站点,支持聚合 RSS 的解析

  • 无需维护完全无感使用

  • 内置 TMDB 解析器,可以直接生成完整的 TMDB 格式的文件以及番剧信息

3.2 新功能

  • 日历视图:按播出日期查看订阅番剧,集成 Bangumi.tv 放送时间表
  • Passkey 无密码登录:支持 WebAuthn 指纹/面容登录,支持无用户名登录
  • 季度/集数偏移自动检测:自动识别「虚拟季度」并计算正确的集数偏移
  • 番剧归档:手动或自动归档已完结番剧,保持列表整洁
  • 搜索源设置面板:在 UI 中直接管理搜索源,无需编辑配置文件
  • RSS 连接状态:实时显示订阅源健康状态,快速定位问题
  • iOS 风格通知徽章:直观显示需要关注的订阅
  • 全新 UI 设计:深色/浅色主题、移动端适配、毛玻璃登录页
  • 性能优化:并发 RSS 刷新提速 10 倍、并发下载提速 5 倍

Roadmap

已支持的下载器:

  • qBittorrent

Star History

Star History Chart

贡献

欢迎提供 ISSUE 或者 PR, 贡献代码前建议阅读 CONTRIBUTING.md。

贡献者名单请见:

Licence

MIT licence

Description
AutoBangumi - 全自动追番工具
Readme MIT 108 MiB
Languages
Python 70.7%
Vue 13%
TypeScript 12.3%
JSON-with-Comments 3.1%
Shell 0.3%
Other 0.4%