pr-contribution-excellencelisted
Install: claude install-skill kookr-ai/kookr
## When to Use
When preparing a PR for any open-source project. These patterns are distilled from analyzing 505+ real closed PRs in active open-source repositories (openai/codex, langchain-ai/langchain, rust-lang/rust, grafana/grafana, langgenius/dify, anomalyco/opencode, n8n-io/n8n, ggml-org/llama.cpp, kubernetes/kubernetes, tensorflow/tensorflow, browser-use/browser-use, pydantic/pydantic-ai, berriai/litellm, mem0ai/mem0, modelcontextprotocol/servers, milla-jovovich/mempalace), including external contributor PRs that were successfully merged, rejected, and reverted.
**This file contains universal patterns only.** Repo-specific patterns live alongside this SKILL.md at `repo/<slug>.md`. Distillation history is in the sibling `evidence.md`. Transient distillation state (state.json, learnings-raw.md) stays in `~/.claude/<slug>-pr-lessons/` — those dirs are working state for the per-repo distillation playbooks and are not bundled.
## Non-Negotiable Rules
| # | Rule | Violation Example | Correct Pattern |
|---|------|-------------------|-----------------|
| 1 | Read contribution guidelines before first PR | Submitting without reading CONTRIBUTING.md | Read and follow every guideline the project publishes |
| 2 | Link the motivating issue in PR body | PR body says "fixes a bug" with no reference | "Fixes #123" or "Relates to #456" in first paragraph |
| 3 | Fill out the PR template completely | Deleting template sections or leaving TODO | Answer every section; write "N/A" if t