# Contributor Onboarding

Help a new contributor get productive on this checkout - inspect sync state against...

- Repository: https://github.com/codewhale-hq/Codewhale (41164 stars)
- Category: Engineering
- License: MIT
- Last updated: 2026-11-01
- Runs scripts: no, instructions only

## Install

Claude Code: `npx skills add codewhale-hq/Codewhale --skill contributor-onboarding -g -a claude-code -y`
Codex: `npx skills add codewhale-hq/Codewhale --skill contributor-onboarding -g -a codex -y`
Cursor: `npx skills add codewhale-hq/Codewhale --skill contributor-onboarding -g -a cursor -y`
Gemini CLI: `npx skills add codewhale-hq/Codewhale --skill contributor-onboarding -g -a gemini-cli -y`

## Description

Help a new contributor get productive on this checkout - inspect sync state against main, build, run the repository's exact verification gate, and produce a local what's-new digest. Never fetches, pulls, or modifies a dirty tree on its own. Explicit-only.

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

# Contributor Onboarding

Requested by @JayBeest in issue #4227: a first-run path for a contributor who
has cloned the repo and wants to know *am I current, does it build, does it
pass, and what changed while I was away*, without a wall of prose and without
anything touching their working tree behind their back.

## Invocation

Explicit-only. Loading this skill is **not** authority to fetch, pull, rebase,
push, or write files. Every network or mutating step below is a separate action
the contributor must ask for after reading the plan.

## Non-goals

- Do not run `git fetch`, `git pull`, `git rebase`, or `git checkout` on your
  own initiative. Report state; propose the command; wait.
- Do not stash, discard, reset, or commit a dirty tree. Ever.
- Do not call a model provider. Every step here is a local command with a
  deterministic result. The digest is built from files and git output, not
  generated prose.
- Do not claim a gate passed that you did not run, and do not summarize a
  build you did not observe.
- Do not privilege any provider. Codewhale is provider-neutral; a dogfood run
  uses whatever route the contributor already configured, or none.

## Workflow

### 1. Inspect (read-only, always safe)

Run these and report the results verbatim. Nothing here writes:

```
git rev-parse --abbrev-ref HEAD
git status --porcelain
git rev-list --left-right --count origin/main...HEAD
```

Report three facts plainly:

- **Branch** the contributor is on.
- **Tree state**: clean, or the count and paths of dirty entries.
- **Sync state**: `N behind, M ahead` of `origin/main`, or **unavailable** when
  `origin/main` is missing or has never been fetched. Unavailable is a real
  answer, say it rather than guessing zero.

### 2. Sync, propose, never perform

If behind, print the exact commands and stop:

```
git fetch origin
git rebase origin/main     # or: git merge origin/main
```

The rest: https://github.com/codewhale-hq/Codewhale/blob/HEAD/crates/skills/assets/skills/contributor-onboarding/SKILL.md
