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, Greasemonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램을 설치해야 합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Violentmonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey 또는 Userscripts와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 Tampermonkey와 같은 확장 프로그램이 필요합니다.

이 스크립트를 설치하려면 유저 스크립트 관리자 확장 프로그램이 필요합니다.

(이미 유저 스크립트 관리자가 설치되어 있습니다. 설치를 진행합니다!)

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 Stylus와 같은 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

이 스타일을 설치하려면 유저 스타일 관리자 확장 프로그램이 필요합니다.

(이미 유저 스타일 관리자가 설치되어 있습니다. 설치를 진행합니다!)

작성자
black-zero358
일일 설치 수
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
  • 从另一账号/设备导出的分类清单恢复到当前账号
  • 进行“重构分类”:创建新分类并批量迁移仓库