Skip to content

About

Operit ToolPkg:B站 / YouTube 视频搜索、聊天内播放卡片(内嵌官方播放器,不落盘)与账号互动。Search, play inline, and interact with Bilibili/YouTube from Operit's chat.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

1 Commit

Folders and files

Repository files navigation

视频流插件 · 完整交付包(video_streamer bundle)

  • 生成时间:2026-09-16 17:47(Asia/Shanghai)
  • 版本:v1.0.1
  • 内容:B站 / YouTube 视频流插件(Operit ToolPkg)的全部相关资料——插件源码、聊天渲染组件、AI 技能、可安装产物、自测脚本与旧版备份。

目录结构

video_streamer_bundle/
├── README.md                          # 本说明
├── toolpkg/                           # 插件源码(ToolPkg 文件夹格式,可直接安装)
│   ├── manifest.json                  # ToolPkg 清单
│   ├── main.js                        # 主入口:注册 聊天渲染钩子 + 系统提示钩子
│   ├── plugin/chat-xml-render.js      # vsplay 标签解析 → 播放卡片
│   ├── plugin/system-prompt.js        # 让 AI 知道怎么用(防绕路)
│   ├── ui/chat/index.ui.js            # 卡片界面(WebView 内嵌官方播放器)
│   ├── shared/sha1.js                 # SHA-1(YouTube SAPISIDHASH 签名)
│   ├── shared/vs-state.js             # 状态键常量
│   └── packages/video_streamer.js     # 15 个工具的实现
├── skill/
│   └── video_streamer_guide/
│       └── SKILL.md                   # AI 使用说明书
├── dist/
│   └── com.operit.video_streamer.toolpkg   # 已打包的可安装产物(Zip 格式)
├── tests/
│   └── selftest_vs.js                 # 离线自测(node 运行,自动定位 toolpkg)
└── legacy/
    ├── video_streamer_v1_source.js    # v1 单文件版源码
    └── video_streamer_v1_installed.bak.js   # v1 安装副本备份

功能一览(15 个工具)

类别 工具 说明
搜索 search_bilibili / search_youtube 关键词搜索,返回 bvid/videoId 与元数据
详情 get_video_info 标题、简介、UP主/频道、统计;B站登录后附带你的点赞/投币/收藏状态
播放 play_video 生成聊天播放卡片标签(校验 id、自动补标题)
登录 save_cookie / cookie_status Cookie 保存与在线校验(B站返回用户名)
B站互动 bili_like / bili_coin / bili_favorite / bili_fav_folders / bili_follow 点赞、投币、收藏、收藏夹列表、关注
YouTube互动 youtube_like / youtube_subscribe / youtube_playlists / youtube_add_to_playlist 点赞/点踩、订阅、播放列表、加入播放列表

快速开始

安装 / 升级插件

  • 已安装包名:com.operit.video_streamer(子包 video_streamer 提供工具;父包提供聊天渲染)
  • 重新安装:用 operit_editor 的 debug_install_toolpkg,来源指向本包的 toolpkg/ 文件夹
  • 或直接导入:dist/com.operit.video_streamer.toolpkg
  • 从 GitHub 安装:下载本仓库 Release 里的 com.operit.video_streamer.toolpkg 导入(与 dist/ 内文件逐字节相同)

安装技能

  • 把 skill/video_streamer_guide/ 复制到 /sdcard/Download/Operit/skills/
  • 在「技能」列表中启用(AI 可见性开关),AI 调用工具前即可读到使用说明

离线自测

node tests/selftest_vs.js

预期:全部通过(SHA-1 测试向量 / 渲染钩子解析 / 工具链路 stub 测试)。

播放卡片用法

  1. 调 play_video(platform, id) 拿到 card_tag
  2. 把 card_tag 原样写进回复正文(不要放进代码块)
  3. 聊天里渲染为内嵌官方播放器的卡片(播放不落盘)

标签格式:<vsplay platform="bilibili" id="BV号" title="可选标题"></vsplay>

当前生效位置(设备上)

  • 插件运行时:/sdcard/Android/data/com.ai.assistance.operit/files/packages/com.operit.video_streamer.toolpkg
  • 技能生效位置:/sdcard/Download/Operit/skills/video_streamer_guide/
  • 本交付包:/sdcard/Download/Operit/video_streamer_bundle/

版本记录

  • v1.0.1(当前)
    • B站匿名请求增加「暖场 Cookie」(buvid3,来自 finger/spi)+ 风控拦截自动重试
    • 全部关键请求增加超时保护(connect_timeout / read_timeout)
    • 修复:工具导出函数必须返回 Promise(否则框架立即判为无输出)
  • v1.0.0
    • 首个完整版:搜索、详情、播放卡片、Cookie 管理、B站/YouTube 全部互动工具

工程备注(修改源码前必读)

  • 工具调用传输层会解码「引号类命名实体」(quot、apos):源码中需要这些实体时,一律用 AMP + "…" 或 \u0026 拼接构造,避免源码被写坏(历史上曾因此产生语法错误)。
  • 应用内调试脚本运行器如遇卡死:重启 Operit 应用以清空挂起队列。
  • 播放卡片渲染依赖父包保持启用;iframe 的 referrer 行为最终以真机为准(B站白名单)。
  • 修改 toolpkg/ 后:重新 debug_install_toolpkg,并跑一遍 tests/selftest_vs.js。

About

Operit ToolPkg:B站 / YouTube 视频搜索、聊天内播放卡片(内嵌官方播放器,不落盘)与账号互动。Search, play inline, and interact with Bilibili/YouTube from Operit's chat.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages