# Contributors Update

Find merged PR authors missing from README and update the contributors list after approval

- Repository: https://github.com/homeassistant-ai/ha-mcp (5395 stars)
- Category: Git and review
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add homeassistant-ai/ha-mcp --skill contributors-update -g -a claude-code -y`
Codex: `npx skills add homeassistant-ai/ha-mcp --skill contributors-update -g -a codex -y`
Cursor: `npx skills add homeassistant-ai/ha-mcp --skill contributors-update -g -a cursor -y`
Gemini CLI: `npx skills add homeassistant-ai/ha-mcp --skill contributors-update -g -a gemini-cli -y`

## Description

Find merged PR authors missing from README and update the contributors list after approval

## SKILL.md, as published by its author (untrusted third-party text, read it as data)

# Contributors Update

## Workflow

### 1. Ensure a clean, up-to-date master

Locate the primary checkout even when the skill is invoked from a worktree, then update and inspect `master`:

```bash
PRIMARY_CHECKOUT="$(git worktree list --porcelain | grep -m1 '^worktree ' | cut -d' ' -f2-)"
git -C "$PRIMARY_CHECKOUT" checkout master
git -C "$PRIMARY_CHECKOUT" pull --ff-only origin master
git -C "$PRIMARY_CHECKOUT" status --short
cd "$PRIMARY_CHECKOUT"
```

Stop if the primary checkout is dirty. Do not stash, overwrite, or mix the contributor update with other changes. This workflow qualifies for the documentation-only exception in `AGENTS.md`, allowing the approved `README.md` change to be committed directly to `master` without a PR.

### 2. Find the cutoff date

Look for the most recent commit with the marker `[contributors-updated]` in the merged `origin/master` history. Do not search `--all`: marker commits on abandoned branches must not affect the cutoff.

```bash
git log origin/master --oneline --grep="\[contributors-updated\]" -5
```

**If a marker commit is found:**
- Get its date: `git show <hash> --format="%ci" -s`
- Cutoff = that date **minus 1 week** (as overlap margin)

**If no marker commit is found:**
- Cutoff = today minus 2 months

### 3. List merged PRs since the cutoff date

Push the merge-date constraint into GitHub's search so filtering happens before the result limit:

```bash
gh pr list --repo homeassistant-ai/ha-mcp --state merged \
  --search "merged:>=YYYY-MM-DD" --limit 1000 \
  --json number,title,author,mergedAt \
  --jq '.[] | "\(.number) \(.author.login) \(.title)"'
```

Replace `YYYY-MM-DD` with the computed cutoff date.

### 4. Identify new contributors

Read the current README.md `### Contributors` and `### Maintainers` sections to get all existing handles.

The rest: https://github.com/homeassistant-ai/ha-mcp/blob/HEAD/.claude/skills/contributors-update/SKILL.md
