GitHub Star Lists CSV Importer (Optimized)

Import CSV -> create GitHub Star Lists and assign repos. Enhancements: staged progress UI, optional "no auto-star" mode.

スクリプトをインストールするには、Tampermonkey, GreasemonkeyViolentmonkey のような拡張機能のインストールが必要です。

You will need to install an extension such as Tampermonkey to install this script.

スクリプトをインストールするには、TampermonkeyViolentmonkey のような拡張機能のインストールが必要です。

スクリプトをインストールするには、TampermonkeyUserscripts のような拡張機能のインストールが必要です。

このスクリプトをインストールするには、Tampermonkeyなどの拡張機能をインストールする必要があります。

このスクリプトをインストールするには、ユーザースクリプト管理ツールの拡張機能をインストールする必要があります。

(ユーザースクリプト管理ツールは設定済みなのでインストール!)

このスタイルをインストールするには、Stylusなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus などの拡張機能をインストールする必要があります。

このスタイルをインストールするには、Stylus tなどの拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

このスタイルをインストールするには、ユーザースタイル管理用の拡張機能をインストールする必要があります。

(ユーザースタイル管理ツールは設定済みなのでインストール!)

このスクリプトの質問や評価の投稿はこちら通報はこちらへお寄せください
作者
black-zero358
1日のインストール数
0
累計インストール数
2
評価
0 0 0
バージョン
0.3.2
作成日
2026/01/28
更新日
2026/01/28
大きさ
29.2KB
ライセンス
AGPLv3
対象サイト

🧾 GitHub Star Lists CSV Importer (Optimized)

把一份 CSV 清单 一键导入到 GitHub Star Lists:自动创建缺失的列表(分类),并把仓库加入对应列表。适合把你在本地维护的“收藏分类/标签体系”同步回 GitHub。

脚本带有 分阶段进度条 + 详细日志,并对 GitHub 的 rate limit / secondary rate limit 做了更保守的并发控制,适合仓库量较大的导入任务。


✨ 功能特性

  • CSV -> GitHub Star Lists:按分类创建/复用列表,并为仓库设置归属
  • 🧩 自动创建缺失的 Star Lists(可选择新建列表为 Private)
  • 🔁 两种更新策略:

    • 合并模式(默认):保留仓库原有其它列表归属,只补充本次 CSV 的目标分类
    • 强制覆盖:仅保留 CSV 指定分类(不保留其它归属)
  • 🧪 Dry Run:导入前先预览“将创建哪些分类/将处理哪些仓库”

  • 🧯 可随时停止:运行中可点击“停止”,会尽快取消进行中的请求

  • 🚀 并发优化:对仓库信息读取、列表扫描、更新写入分别控制并发,降低触发 abuse detection 风险

  • 🧾 更友好的 UI:模态窗口 + 阶段提示 + 进度条 + 彩色日志(成功/警告/错误)


📥 CSV 格式

支持带表头或无表头,建议三列:

Category,Repository Name,URL
AI Dev,ollama/ollama,https://github.com/ollama/ollama
Tools,sharkdp/bat,https://github.com/sharkdp/bat

说明:

  • Category:目标 Star List 名称(分类)
  • Repository Nameowner/repo(优先使用)
  • URL:可选,用于从链接解析仓库名(当第二列缺失或不规范时)

🖱 使用方式

  1. 安装脚本后,打开任意 GitHub 页面
  2. 在脚本管理器菜单中选择:Import Star Lists (Optimized)
  3. 填写 GitHub Personal Access Token (PAT)(必需)
  4. 粘贴 CSV 或选择文件导入
  5. 可先点 Dry Run 预览计划,然后点击 开始运行

🔑 关于 Token(PAT)要求

本脚本通过 GitHub GraphQL API 操作 Star Lists,必须提供 PAT。

只能选择 classic Token ,授予 user、repo 权限

建议最小权限(以 GitHub 实际权限配置为准):

  • 能读取用户信息、读取仓库信息
  • 能进行 star 操作(如果开启自动 star)
  • 能创建/更新 Star Lists

脚本会将 Token 保存到 Tampermonkey 本地存储(仅本机可见),不会上传到任何第三方服务器。


⚙ 重要选项说明

  • 新建列表设为私有 (Private):创建的新列表为私有
  • 强制覆盖:不保留仓库原有其它列表归属,仅以 CSV 为准
  • 只更新目标分类,不自动 Star(No Auto-Star)

    • 开启后脚本不会帮你自动 star 未 star 的仓库
    • ⚠ 由于 GitHub 机制,未 Star 的仓库通常无法可靠加入 Star Lists,脚本会提示并跳过这些仓库,避免违背你的意图

⚠ 注意事项(建议阅读)

  • 导入量大时可能遇到 secondary rate limit / abuse detection 脚本已做保守并发与重试,但仍建议:

    • 适当降低并发
    • 分批导入(例如按分类拆分 CSV)
  • 当你未开启“强制覆盖”时,脚本会扫描现有列表 items,用于合并保留其它归属;列表很多时会更慢(但更安全)


🧩 典型用途

  • 从你自己的 CSV/表格分类体系,快速同步到 GitHub Star Lists
  • 从另一账号/设备导出的分类清单恢复到当前账号
  • 进行“重构分类”:创建新分类并批量迁移仓库