# Google Keep extension **Repository Path**: weiner111/google-keep-extension ## Basic Information - **Project Name**: Google Keep extension - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-08-22 - **Last Updated**: 2026-10-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # YouTube Digest [English](README.md) | [简体中文](README.zh-CN.md) 把每个 YouTube 视频变成一份可以深入学习的资料。YouTube Digest 把字幕、双语翻译、AI 概览、内容讲解和时间戳笔记放进同一个 Chrome 侧边栏,让你可以持续学习视频中的知识和语言,同时不丢失原视频上下文。 - 把零碎字幕变成清晰、可搜索的学习资料。 - 查看原文、简体中文翻译,或中英双语对照字幕来学习语言。 - 通过 AI 概览、章节、重点引用和选中文本讲解建立系统理解。 - 点击字幕、概览或笔记中的时间戳,快速跳转到对应位置。 - 保存自动润色的时间戳笔记,方便之后复习。 - 使用自己的 API Key,数据保存在本地 Chrome 中,不包含分析统计或行为追踪。 YouTube Digest 是一个需要自行提供 API Key 的开源项目,通过 Gitee 下载并本地安装。目前没有上架 Chrome 应用商店,不赠送 API 额度,也没有开发者运营的服务器。 ## 1.5 新功能 - 字幕加载后自动生成 Overview 和 Notes 中的 AI 总结,无需再点击;会使用你配置的 API 额度。 - 中文翻译支持优先队列、并行处理和失败自动重试,Overview 会复用已完成译文。 - “导出 Word”会在后台补齐中文字幕、概览、AI 总结和五类费曼练习。切换视频或关闭侧栏不影响任务;侧栏底部可查看进度或取消。 - Word 包含可点击目录、独立章节、作答空间,以及单独的参考要点与视频时间戳。文件名为“视频名字_年月日_时分秒.docx”。 - 同时支持一个导出任务。Chrome 关闭时暂停,下次启动后尝试恢复。下载文件请查看浏览器下载记录。 下载仓库 ZIP 后即可加载扩展,不需要安装 Node.js、运行 npm 或编译。选择解压后直接包含 `manifest.json` 的文件夹。首次使用需在 Settings 配置自己的 API Key;新版增加后台调度和下载权限。 ## 让你的编程 Agent 帮你安装 你不需要看懂代码,也不需要会使用命令行。把下面这段话发送给你的编程 Agent: > 请把这个项目下载或克隆到我选择的长期保留文件夹,告诉我准确的完整路径,并让 Chrome“加载已解压的扩展程序”使用同一个文件夹。如果我在第一次安装时需要位置建议,可以推荐 macOS 或 Linux 上的 `~/Documents/youtube-digest`,或 Windows 上的 `%USERPROFILE%\Documents\youtube-digest`,但不要假设我一定使用这些路径。请用简单易懂的语言一步一步指导我完成安装和配置。https://gitee.com/weiner111/google-keep-extension 你的 Agent 应该帮你: 1. 先询问你想把项目长期保存在哪里,再下载或克隆到那里,并告诉你准确的完整路径。如果你需要建议,可以推荐 macOS 或 Linux 上的 `~/Documents/youtube-digest`,或 Windows 上的 `%USERPROFILE%\Documents\youtube-digest`。 2. 打开下方 DeepSeek 官方页面,指导你创建自己的账号。 3. 指导你在 Chrome 中通过“加载已解压的扩展程序”选择你刚才确定的那个准确项目文件夹。 4. 告诉你应该在扩展的“设置”页面哪个位置填写 API Key。 5. 打开一个带字幕的 YouTube 视频,确认字幕和翻译功能可以使用。 安装后请让这个文件夹留在原位。如果移动或删除它,Chrome 中加载的本地扩展会失效,需要从新的长期存放位置重新加载。 不要把 API Key 发送到 AI 对话、源代码、截图或公开消息中。请你自己在 YouTube Digest 的设置页面直接填写。编程 Agent 可以告诉你填写位置,但不需要看到 Key。 ## 手动安装 如果你想自己操作: 1. 打开 [gitee.com/weiner111/google-keep-extension](https://gitee.com/weiner111/google-keep-extension)。 2. 点击 **克隆/下载**,再点击 **下载 ZIP**。 3. **解压 ZIP** 到一个长期保留的文件夹。可选建议是 macOS 或 Linux 上的 `~/Documents/youtube-digest`,或 Windows 上的 `%USERPROFILE%\Documents\youtube-digest`。你也可以使用其他文件夹。**注意:解压后 `manifest.json` 必须在最外层。** 如果解压后多了一层嵌套文件夹,请把里面的内容移出来,让 `manifest.json` 直接位于所选文件夹下。 4. 在 Chrome 地址栏打开 `chrome://extensions`。 5. 打开右上角的“开发者模式”。 6. 点击“加载已解压的扩展程序”。 7. 选择你刚才确定的那个准确项目文件夹,其中必须包含 `manifest.json`。 8. 如果需要,可以在 Chrome 扩展菜单中固定 YouTube Digest。 这是一个本地加载的扩展,不会自动更新。下载新版或让 Agent 修改代码后,请在 `chrome://extensions` 中找到 YouTube Digest 并点击“重新加载”,然后刷新已经打开的 YouTube 页面。如果移动或删除源代码文件夹,Chrome 中加载的扩展会失效,需要从新的位置重新加载。 ## 设置 API Key YouTube Digest 需要你在自己的服务账号中准备一个 Key: 1. **DeepSeek API Key**,用于生成概览、讲解内容、翻译和自动润色笔记。 字幕直接从 YouTube 的公开字幕轨道获取,因此**不需要配置字幕服务 API Key**。 ### 获取 DeepSeek API Key 1. 打开 DeepSeek 官方 [API Keys 页面](https://platform.deepseek.com/api_keys)。 2. 按照提示登录,或创建 DeepSeek 开放平台账号。 3. 点击 **Create new API key**,填写容易识别的名称,例如 `YouTube Digest`,然后创建 Key。 4. 立即复制 Key。完整 Key 可能只会显示一次。 5. 把 Key 粘贴到 YouTube Digest 设置中的 **DeepSeek API key**。 6. 如果 DeepSeek 提示余额不足,请在 DeepSeek 开放平台账号中充值后再试。 当前账号和接口说明请查看 [DeepSeek 官方 API 文档](https://api-docs.deepseek.com/)。 在侧边栏中打开 **Settings**。你也可以在 `chrome://extensions` 的 YouTube Digest 卡片中打开扩展选项。Key 只能粘贴到这一个设置输入框中。不要把 Key 发送到 AI 对话、项目文件、截图或公开消息中。 发布版本支持两个 AI 服务,可在 **Settings** 中选择: ```text DeepSeek: Base URL: https://api.deepseek.com Model: deepseek-v4-flash MiniMax (MiMo): Base URL: https://api.minimaxi.com/anthropic Model: MiniMax-M2 ``` 在设置中选择 **服务商(Provider)** 并粘贴对应的 API 密钥。**接口地址(Base URL)** 和 **模型(Model)** 会自动填入默认值,也可以手动修改,OpenAI 兼容或 Anthropic 兼容的接口都能用。MiniMax 国际版使用 Anthropic 兼容端点 `https://api.minimaxi.com/anthropic`(配合 sk- 密钥)。YouTube Digest 会让所有 DeepSeek 请求使用非思考模式,以获得更快、更稳定的交互;各服务商专属的请求参数相互隔离。不要把 API Key 发送到 AI 对话、项目文件、截图或公开消息中。 API Key 和设置保存在你设备上的 Chrome 扩展本地存储中。发布包不会包含或使用 `config.js`。 ## 使用 YouTube Digest 1. 打开一个有字幕的普通 YouTube 视频页面。 2. 点击 YouTube Digest 扩展图标,打开侧边栏。 3. 阅读带时间戳的字幕,或选择 **Original**、**中文**、**双语**。 4. 打开 **Overview**,查看 AI 生成的章节和重点引用。 5. 选中字幕,获取 AI 内容讲解。 6. 从播放器或重点引用中保存笔记,之后可以在 **Notes** 中查看。 ## 支持哔哩哔哩(B 站) YouTube Digest 也可以在 B 站视频页面(`bilibili.com/video/...`)使用: - 打开 B 站视频,点击扩展图标即可打开侧边栏。 - 字幕、Overview、选中文本讲解和笔记功能与 YouTube 一致。 - 字幕来自页面自己的字幕轨道(包括 AI 生成字幕)。没有字幕轨道的视频会提示 "No subtitles found"。 - **Original / 中文 / 双语** 翻译模式会把非中文字幕翻译成中文;字幕本身是中文时自动隐藏。 - 支持多 P 视频:切换分 P 时会重新抓取对应分 P 的字幕。 ## 修正字幕错别字 自动生成的字幕(尤其是 B 站 AI 字幕)经常有语音识别错误:错别字、同音字、标点错误。YouTube Digest 可以直接修正: 1. 在侧边栏中**选中**有错误的字幕文字。 2. 点击选中文字旁边出现的 **✏️ Fix** 按钮。 3. 查看修正结果,点击 **Apply to transcript** 把修正写回字幕,或点击 **Copy corrected** 复制。 只有选中的几行会发送给 AI,所以修正又快又省。修正保持原有语言和含义,只改识别错误。 ![步骤 1:选中要修正的字幕文字](docs/fix-1.png) ![步骤 2:点击 Fix 并查看修正结果](docs/fix-2.png) ![步骤 3:把修正应用到字幕](docs/fix-3.png) ## AI 概览(Overview) **Overview** 标签页把整个视频变成一张学习地图:覆盖完整时间线的 AI 章节、带时间戳的重点引用,以及可一键跳转的关键时刻。打开视频等字幕加载完成后,切到 **Overview** 标签即可。 如果概览没有显示,先切换到 **Transcript** 标签,再切回 **Overview** 重试。模型有时候反应比较迟钝。 ![Overview:AI 章节和重点引用](docs/overview-1.png) ## 笔记与 AI 总结(Notes / Summarize) 用播放器上的 **Note** 按钮、"n" 键或重点引用保存带时间戳的笔记,之后在 **Notes** 标签页统一查看。Notes 标签页还提供 **AI Video Summary(Summarize)** 按钮:它会读取整段字幕,用字幕的语言生成要点式视频总结。 ![笔记与 AI 总结](docs/summarize-1.png) ## 下载安装教程 ![输入图片说明](docs/%E5%9B%BE6.png) ![输入图片说明](docs/%E5%9B%BE7.png) ![输入图片说明](docs/%E5%9B%BE8.png) ![输入图片说明](docs/%E5%9B%BE9.png) ![输入图片说明](docs/%E5%9B%BE10.png) ![输入图片说明](docs/%E5%9B%BE11.png) ![输入图片说明](docs/%E5%9B%BE12.png) ![输入图片说明](docs/%E5%9B%BE13.png) ![输入图片说明](docs/%E5%9B%BE14.png) ## 整体效果预览 ![步骤 1:下载 ZIP 并解压](docs/install-1.png) ![步骤 2:在 chrome://extensions 开启开发者模式](docs/install-2.png) ![步骤 3:加载已解压的扩展程序并选择项目文件夹](docs/install-3.png) ## 当前支持范围 - Chrome 116 或更高版本。 - 标准的 `youtube.com/watch` 视频页面和 `bilibili.com/video/...` 页面。 - 直接从 YouTube 或 B 站获取的原生字幕。YouTube 优先请求英文字幕,也可能显示其他可用的原生语言。 - 原文、简体中文和双语对照字幕。 - AI 概览、选中文本讲解、翻译和自动润色笔记。 - 本地笔记,以及最近字幕、概览和翻译的本地缓存。 - 发布版本的所有 AI 功能都使用 DeepSeek V4 Flash。其他服务需要修改本地代码,不属于发布版本的支持范围。 Shorts、直播、私密视频、受访问限制的视频,以及没有原生字幕的视频可能无法使用。目前没有测试 Firefox、Safari、移动浏览器或其他 Chromium 浏览器。 YouTube Digest 只使用 YouTube 的原生字幕轨道,不会在没有原生字幕时请求 AI 生成转录,也不会在本地转录音频。 ## 获取字幕完全免费 YouTube Digest 直接从 YouTube 的公开字幕接口获取字幕。**不需要字幕服务 API Key**,没有积分体系,也没有按次计费。YouTube 可能自行限速或随时调整字幕接口,这可能影响可用性。 DeepSeek 的额度与字幕获取分开计算。DeepSeek 可能有自己的免费额度、限速或费用。YouTube Digest 不收款,也不转售 API 服务。建议为你的账号设置消费上限并定期查看用量。下方估算说明了当前 DeepSeek 翻译成本。 ## DeepSeek V4 Flash 翻译成本估算 截至 2026 年 8 月 10 日,DeepSeek 官方[价格页面](https://api-docs.deepseek.com/quick_start/pricing/)列出的每 100 万 token 价格是: - 缓存命中输入:**¥0.02**。 - 缓存未命中输入:**¥1**。 - 输出:**¥2**。 DeepSeek 说明这些价格可能很快上调,因此使用此估算前必须查看当前价格页面。官方 [token 用量指南](https://api-docs.deepseek.com/quick_start/token_usage/)估算每个英文字符约为 0.3 token,每个中文字符约为 0.6 token。[上下文缓存指南](https://api-docs.deepseek.com/guides/kv_cache/)说明了重复前缀使用的自动尽力而为磁盘缓存。 一个实测的 20 分钟英文演讲包含 **2,935 个英文口语词**和 15,433 个字幕字符。按 YouTube Digest 当前的分组方式,它会变成 128 个语义分段,以每次 3 段的方式发出 43 次请求。算上重复 prompt 和 JSON 后,渲染后的输入约为 108,528 个英文字符,按官方每个英文字符 0.3 token 的经验值,即**约 32,600 个输入 token**。按每个中文字符 0.6 token 的经验值,再加上 JSON 和 ID 开销,中文 JSON 输出估计为 3,500 到 4,500 token。 如果所有输入都按缓存未命中计费,输入约 $0.0046,输出约 $0.0010 到 $0.0013,总计约 $0.0056 到 $0.0059。当大量重复的 system prompt 命中 DeepSeek 自动尽力而为缓存时,更现实的低值约为 $0.002 到 $0.003。完整翻译这段演讲的实用估算是 **$0.002 到 $0.006 USD,约 ¥0.02 到 ¥0.04**。 翻译是延迟按需和渐进式的。已缓存的分段会复用,只有滚动到并请求的字幕行才会发起调用。重试、服务商行为和价格变化都可能增加最终成本。 ## 用编程 Agent 改造成自己的版本 这是一个个人 Remix 项目,不接受上游 Issue 或 Pull Request。如果功能出错,或者你想增加新功能,请下载或 Fork 自己的副本,再让你的编程 Agent 帮你修复、改造和个性化。 YouTube Digest 使用原生 HTML、CSS 和 JavaScript,没有构建步骤,很适合用编程 Agent 做个人项目。你可以尝试: - 增加更多翻译语言,并让每个人选择自己的学习语言。 - 为课程、访谈、教程、测评或研究视频增加自定义总结模板。 - 增加生词本,保存单词、原句、解释和视频时间戳。 - 把笔记和生词导出到 Markdown、CSV、Anki 或其他学习工具。 - 增加个人主题筛选,只突出与你目标相关的章节。 - 增加本地模型选项,获得不同的隐私和成本方案。 - 改善键盘操作、字体大小和高对比度等无障碍体验。 请让 Agent 保留用户自带 API Key 的模式,不要把秘密写入源代码,并运行下方检查。分享自己的版本前,也要在真实视频上测试。 如果想使用其他 AI 服务或模型,请先在编程 Agent 中打开 Chrome 通过“加载已解压的扩展程序”使用的那个准确的 YouTube Digest 项目文件夹。然后打开 YouTube Digest 设置并点击 **Copy customization prompt**。发送前替换 `[PROVIDER]` 和 `[MODEL]`,但不要加入任何 API Key。Agent 完成本地代码修改后,请你自己在它指出的设置位置填写 Key。 ## 隐私和数据流向 YouTube Digest 会直接从扩展向服务商发送请求: 1. 从 YouTube 获取视频的公开字幕轨道,不需要字幕服务 API Key。 2. 当你使用 AI 功能时,把字幕和相关视频信息发送给 DeepSeek。 3. 翻译或讲解等功能只发送当前需要的内容,例如选中的文本和上下文,或少量字幕分段。 4. API Key、设置、笔记和最近缓存保存在 Chrome 本地。 YouTube Digest 没有账号系统、广告、分析统计或行为追踪。YouTube 和 DeepSeek 仍会按照各自的条款和隐私政策处理数据。详情请查看 [PRIVACY.md](PRIVACY.md)。 ## 常见问题 ### YouTube 视频页面没有显示 Digest 按钮 - 在 `chrome://extensions` 中找到 YouTube Digest,点击“重新加载”,然后刷新 YouTube 页面。 - 确认当前页面是标准 `https://www.youtube.com/watch?...` 页面,而不是 Shorts、嵌入页面或直播页面。 - 当前版本会在 YouTube 响应式操作栏变化时自动重新定位按钮。页面加载完成后可以稍等片刻。 - 如果你使用的是较早下载的版本,可以先横向调整一次 YouTube 窗口宽度让按钮出现,然后下载最新版,这样之后不再需要调整窗口。 - 如果按钮仍然没有出现,让你的编程 Agent 在这个具体视频页面检查 content script。 ### 侧边栏无法打开 - 确认你打开的是标准 `https://www.youtube.com/watch?...` 页面。 - 在 `chrome://extensions` 中确认 YouTube Digest 已启用,并点击“重新加载”。 - 重新加载扩展后,刷新 YouTube 页面。 - 如果问题仍然存在,让你的编程 Agent 检查扩展。 ### YouTube Digest 提示需要设置 - 打开 **Settings**,保存你的 DeepSeek Key。 - 发布版本支持在设置中选择 DeepSeek 或 MiniMax 服务商,接口地址和模型都可以修改。 - 如果设置提示旧的自定义服务已移除,请重新填写 DeepSeek Key。旧 AI Key 已安全清除,避免被错误用于 DeepSeek。 ### 找不到字幕 - 确认视频是公开的,并且有原生字幕。 - 字幕获取依赖 YouTube 的公开字幕接口。YouTube 限速或接口调整可能导致暂时失败,请稍后重试。 - 直播和只有生成字幕的视频不受支持。 YouTube Digest 不会自动改用 AI 生成字幕。 ### AI 请求失败 - `401` 或 `403` 通常表示 DeepSeek Key 或账号权限有问题。 - `429` 通常表示达到了 DeepSeek 服务限速或消费上限。 - 确认 Key 来自上方链接的 DeepSeek 开放平台账号,并且账号有可用额度。 - 如果你把本地副本改成了其他模型,请再次使用设置中的自定义 prompt,让编程 Agent 检查本地实现。 不要在对话、截图或日志中分享 API Key、私密字幕或个人笔记。 ## 给编程 Agent 的检查命令 修改项目后,让你的编程 Agent 运行: ```bash npm test npm run check npm run package ``` Agent 还应该在 Chrome 中重新加载扩展,并测试多个真实 YouTube 视频。自动检查通过,不代表真实服务请求和 YouTube 交互一定正常。 ## 开源许可 MIT,详见 [LICENSE](LICENSE)。