Important
维护状态说明:由于个人精力有限,本项目已停止主动维护,不再处理新的功能需求与反馈(历史 Issues 已迁移至 Discussions)。
如果您对本项目感兴趣,欢迎:
- 直接提交 Pull Request,经审核确认无误后会尽快合并;
- Fork 本仓库继续开发与维护。本项目基于 Apache License 2.0 开源,Fork 后请继续遵循该协议。
LinuxDo Scripts 是一个功能丰富的浏览器扩展,专为提升 LinuxDo 论坛的使用体验而设计。它集成了从基础界面优化到高级 AI 辅助的多项实用功能,让您的论坛浏览和互动体验更加流畅高效。
更多功能查看前往 LinuxDo Scripts 文档
| 浏览器 | 安装链接 | 备注 |
|---|---|---|
| Chrome / Edge / Arc / Brave | Chrome Web Store | 推荐 |
| Firefox | Firefox Addons | 推荐 |
| 国内用户 | Crx 商店 | 无需翻墙 |
- 点击上方对应浏览器的安装链接
- 在扩展商店中点击"添加到浏览器"
- 确认安装权限
- 访问 LinuxDo 论坛 开始使用
- Node.js:
v22.12.0
# 1. 克隆项目
git clone https://github.com/anghunk/linuxdo-scripts.git
cd linuxdo-scripts
# 2. 安装依赖
npm install
# 3. 启动开发服务
npm run dev- 打开浏览器扩展管理页面
- Chrome:
chrome://extensions/ - Firefox:
about:addons
- Chrome:
- 开启"开发者模式"
- 点击"加载已解压的扩展程序"
- 选择项目根目录下的
.output/chrome-mv3文件夹
- 🧩 组件化开发: 每个功能独立组件,避免冲突
- 🔄 提交流程: PR → 代码审核 → 合并
- 📚 文档更新: 新功能需同步更新文档
npm test
npm run compile
npm run build
npx playwright install chromium
npm run test:browser浏览器测试使用独立的临时配置目录和拦截的测试页面,不访问真实论坛或读取个人浏览器数据。可使用 PLAYWRIGHT_CHROMIUM_EXECUTABLE 指定已有的 Chromium 可执行文件。
设置保存等待 IndexedDB 事务提交;读取失败时保留原数据并提供重试。普通保存只合并面板实际修改的字段;同一字段的同时编辑按最后一次提交为准,手动导入和云端恢复仍会替换整份设置。
WXT 负责打包,publish-browser-extension 负责上传新版本并提交审核,审核通过后由商店发布。首次创建商店条目仍需在开发者后台手动完成。
项目使用 WXT 0.19,其内置提交工具使用 Chrome 旧版 API。这里单独固定发布工具为 6.0.0,通过 Chrome Web Store API v2 提交,入口是 npm run submit。
先在本地运行凭据配置向导:
npm install
npm run submit:initChrome 选择 API v2,按 Google 服务账号指南 启用 Chrome Web Store API、关联服务账号并下载 JSON 密钥。向导生成的 .env.submit 仅供本地使用,已加入 Git 忽略规则。
在 GitHub 仓库 Settings → Secrets and variables → Actions → Secrets 中添加:
| 商店 | Secret | 用途 |
|---|---|---|
| Chrome | CHROME_EXTENSION_ID |
当前账号下的扩展 ID |
| Chrome | CHROME_PUBLISHER_ID |
开发者后台 Publisher → Settings 中的发布者 ID |
| Chrome | CHROME_SERVICE_ACCOUNT_CLIENT_EMAIL |
服务账号 JSON 中的 client_email |
| Chrome | CHROME_SERVICE_ACCOUNT_PRIVATE_KEY |
服务账号 JSON 中的 private_key,保留 PEM 的实际换行 |
| Firefox | FIREFOX_EXTENSION_ID |
AMO 中现有扩展的 ID |
| Firefox | FIREFOX_JWT_ISSUER |
AMO API key |
| Firefox | FIREFOX_JWT_SECRET |
AMO API secret |
首次接入时,在 Actions → 发布扩展商店 → Run workflow 中填写已有 Release 标签,保留 dry_run=true 验证凭据。验证通过后,将同一入口的 dry_run 取消勾选即可正式提交;stores 可选择 all、chrome 或 firefox。两家商店分别运行,某家失败时可单独重试该商店。
启用后续自动提交:在同一设置页的 Variables 中添加 PUBLISH_STORES=all,也可填写 chrome 或 firefox。现有 Release 工作流创建新版本后,会把该 Release 中的安装包交给商店发布工作流。Firefox 同时提交 *-sources.zip,供审核人员重建源码。移除该变量即可关闭自动提交,手动入口仍可使用。
现有 Release 工作流仅在 anghunk/linuxdo-scripts 仓库运行;Fork 维护者需先将 .github/workflows/create_release.yml 中的仓库条件改为自己的仓库,并配置原有的 ACCESS_TOKEN。
参考:WXT 发布文档、Chrome API v2 迁移公告、发布工具配置。
一如既往,感谢我们出色的贡献者们!
- https://linux.do/t/topic/850824 - 始皇酱表情包功能
本项目采用 Apache License 2.0 开源协议。
您可以自由地:
- ✅ 使用、复制、修改和分发本软件
- ✅ 用于商业目的
- ✅ 在遵循协议的前提下重新授权
但需要:
- 📋 保留原始版权声明
- 📋 标明对原始代码的修改
- 本项目为免费开源项目,不保证绝对完善无误
- 使用前请自行评估风险,遵守相关法律法规
- 严禁任何形式的滥用行为
- 如有侵权问题,请联系 @anghunk 及时处理



