mcpField
G
GitHub About

GitHub About

github.com/alfredang开发38 次安装
代码仓库

关于 GitHub About

GitHub About 是面向仓库维护者的 Claude Code 技能,可根据代码库更新 GitHub 仓库的 About 信息,涵盖描述、主页网址和主题。

主要功能

  1. 01生成仓库描述
  2. 02检测线上站点网址
  3. 03分析代码库并生成主题
  4. 04保留已有主题
  5. 05使用 GH_TOKEN 验证 gh

适用场景

  1. 01编写或更新仓库描述
  2. 02查找并设置项目主页
  3. 03根据技术栈添加主题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/alfredang/skills --skill github-about

安装后在 Claude Code 中输入/github-about确认已加载。

附带文件examples.md

详细介绍

GitHub 关于

命令

/github-about 或 github-about

导航

Git 与仓库

关键词

github 关于,仓库描述,github 主题,线上网站 URL,主页 URL,仓库设置,github 元数据,仓库设置,github 描述,添加主题,设置主页,仓库关于,github 个人资料,项目元数据,更新关于,更新仓库,更新 github,更新描述,设置主题,仓库关于部分,关于部分,更新仓库关于,更新 github 关于

描述

通过分析代码库,自动更新 GitHub 仓库的“关于”部分,包括描述、线上网站 URL 和主题。无需手动更改仓库设置。

执行

此技能通过订阅方案中的 Claude Code运行。请勿使用按量付费的 API 密钥。所有 AI 操作都应通过已激活订阅的 Claude Code CLI 环境执行。

重要:自动触发行为 每当用户要求执行以下操作时,都应自动调用此技能(无需用户输入 /github-about):

  • 更新 GitHub 关于部分
  • 设置或更改仓库描述
  • 为仓库添加主题
  • 设置主页/线上网站 URL
  • 更新仓库元数据
  • “完善”或“设置”其 GitHub 仓库

自动触发后,请静默运行完整工作流,并在最后报告结果。

环境设置

运行任何 gh 命令前,务必先加载令牌:

source ~/.zshrc 2>/dev/null

这会加载 GH_TOKEN,供 gh CLI 自动用于身份验证。每次执行都必须在开始时完成此操作。

响应

我将更新你的 GitHub 仓库的“关于”部分!

工作流包括:

步骤说明
环境设置加载 ~/.zshrc 以获取 GH_TOKEN
身份验证检查通过令牌验证 gh CLI 身份验证
仓库信息从 git 远程地址提取所有者/仓库
描述生成并设置引人注目的仓库描述
线上网站检测并设置线上网站 URL
主题分析技术栈并添加相关主题

说明

执行 /github-about 时,请遵循以下工作流:

阶段 1:执行前检查
1.1 验证 GitHub CLI
gh --version

如果未安装,请告知用户:

ERROR: GitHub CLI (gh) not found.
Install: https://cli.github.com/
1.2 使用 GH_TOKEN 进行身份验证

GH_TOKEN 环境变量已在 ~/.zshrc 中配置。如果存在,gh CLI 会自动使用 GH_TOKEN,无需通过浏览器登录。

身份验证检查顺序:

  1. 加载令牌并验证:
source ~/.zshrc 2>/dev/null
echo "GH_TOKEN is set: ${GH_TOKEN:+yes}"
  1. 验证令牌是否有效:
gh auth status
  1. 如果未设置 GH_TOKEN,且 gh auth status 失败,则回退到浏览器登录:
gh auth login --hostname github.com --git-protocol https --web

重要: 在运行任何 gh 命令前,务必先运行 source ~/.zshrc,确保 GH_TOKEN 已加载到当前 shell 会话。gh CLI 会自动读取 GH_TOKEN 和 GITHUB_TOKEN 环境变量,无需额外配置。

1.3 提取所有者/仓库
REMOTE_URL=$(git remote get-url origin)
OWNER=$(echo "$REMOTE_URL" | sed -E 's#.*(github\.com)[:/]([^/]+)/([^/.]+)(\.git)?$#\2#')
REPO=$(echo "$REMOTE_URL" | sed -E 's#.*(github\.com)[:/]([^/]+)/([^/.]+)(\.git)?$#\3#')
1.4 获取当前仓库元数据
gh repo view --json description,homepageUrl,repositoryTopics

保存当前值,以便确定需要更新哪些内容。

阶段 2:仓库描述
2.1 检查当前描述

如果已设置描述,则跳过,除非用户明确要求更新。

2.2 生成描述

分析项目并生成简短且引人注目的描述(最多 350 个字符):

分析来源(按优先级排序):

  1. README.md — 项目标题、首段、功能
  2. package.json → description 字段
  3. pyproject.toml → [project] description
  4. Cargo.toml → description
  5. setup.py 或 setup.cfg → 描述
  6. 主要源文件 — 了解项目的用途

描述规范:

  • 以动词或名词开头(例如,“快速……”“构建……”“用于……的 CLI 工具”)
  • 明确说明项目的用途
  • 如相关,提及关键技术
  • 控制在 350 个字符以内
  • 描述中不要使用表情符号
  • 不要以“This is...”或“A repo for...”开头
2.3 设置描述
gh repo edit --description "Your generated description"
阶段 3:线上网站 URL
3.1 检查当前主页

如果已设置主页 URL,则跳过,除非用户明确要求更新。

3.2 检测在线网站 URL

按以下优先级顺序搜索部署 URL:

  1. Vercel:检查是否有 Vercel 部署

    # Check if Vercel project exists
    cat .vercel/project.json 2>/dev/null
    # Or check vercel.json for project name
    cat vercel.json 2>/dev/null
    

    URL 模式:https://<project-name>.vercel.app

  2. GitHub Pages:检查是否已启用 Pages

    gh api "/repos/$OWNER/$REPO/pages" 2>/dev/null
    

    URL 模式:https://<owner>.github.io/<repo>/

  3. package.json:检查 homepage 字段

    node -e "console.log(require('./package.json').homepage || '')" 2>/dev/null
    
  4. README.md:查找部署 URL

    • 查找包含以下内容的 URL:.vercel.app、.netlify.app、.github.io、.herokuapp.com、.fly.dev、.railway.app
  5. 自定义域名:检查 CNAME 文件(GitHub Pages 自定义域名)

    cat CNAME 2>/dev/null
    
3.3 设置主页 URL
gh repo edit --homepage "https://detected-url.com"
阶段 4:仓库主题
4.1 检查当前主题

如果已设置主题,则在现有主题的基础上添加,而不是替换。绝不要移除现有主题。

4.2 根据代码库检测主题

分析项目以确定相关主题:

语言检测:

文件/模式主题
*.ts、*.tsxtypescript
*.js、*.jsxjavascript
*.pypython
*.rsrust
*.gogo
*.javajava
*.swiftswift
*.rbruby

框架检测:

文件/模式主题
next.config.*nextjs、react
vite.config.*vite
package.json 中包含 reactreact
package.json 中包含 vuevue
package.json 中包含 sveltesvelte
angular.jsonangular
requirements.txt 中包含 djangodjango
requirements.txt 中包含 fastapifastapi
requirements.txt 中包含 flaskflask
Cargo.tomlrust
go.modgolang
tailwind.config.*tailwindcss
package.json 中包含 expoexpo、react-native

平台检测:

文件/模式主题
.vercel/ 或 vercel.jsonvercel
Dockerfiledocker
fly.tomlfly-io
railway.jsonrailway
.github/workflows/github-actions
supabase/supabase

领域检测(分析 README 和源代码):

  • AI/ML 项目 → ai、machine-learning、llm
  • CLI 工具 → cli、command-line
  • API → api、rest-api、graphql
  • Web 应用 → web-app、webapp
  • 游戏 → game、gamedev
  • 开发工具 → developer-tools、devtools

主题指南:

  • 全部使用小写
  • 多词主题使用连字符(例如,react-native)
  • 添加 3-10 个相关主题
  • 不要添加 code 或 project 等通用主题
  • 优先选择具体主题,而非模糊主题
4.3 添加主题
gh repo edit --add-topic "topic1" --add-topic "topic2" --add-topic "topic3"

**重要:**使用 --add-topic(而非 --topic)以保留现有主题。

阶段 5:报告

打印所有已进行更改的摘要:

=== GitHub About Updated ===

Repository: OWNER/REPO

Description: <the description that was set>
Homepage:    <the URL that was set>
Topics:      topic1, topic2, topic3, topic4

View: https://github.com/OWNER/REPO

如果跳过了某个步骤(因为已设置),请注明:

Description: Already set (skipped)
Homepage:    https://example.vercel.app (updated)
Topics:      react, nextjs, typescript (added 3 new)

功能

  • 自动分析代码库并检测、设置仓库描述
  • 检测来自 Vercel、GitHub Pages、Netlify 等平台的在线网站 URL
  • 分析技术栈并生成相关的仓库主题
  • 添加新主题时保留现有主题
  • 从 ~/.zshrc 中读取 GH_TOKEN 进行身份验证(无需浏览器登录)
  • 如果没有可用令牌,则改用基于浏览器的 gh auth login
  • 适用于任何项目类型(Node.js、Python、Rust、Go 等)

后续步骤

运行 /github-about 后:

  1. 在 GitHub 上检查仓库的 About 部分
  2. 确认描述准确体现了你的项目
  3. 点击主页 URL,确认其可以正常访问
  4. 检查主题,并根据需要手动添加或移除

评论

支持 Markdown