create-pr

Installation
SKILL.md

Create PR

Push the current branch to the user's fork of yugabyte/yugabyte-db and create a cross-repo GitHub pull request against the upstream using the gh CLI.

Contributors do not have push access to yugabyte/yugabyte-db. The branch must be pushed to a personal fork, and the PR is opened cross-repo from that fork into the upstream repo.

Confidentiality — read before you write anything public

The upstream repo, every GitHub issue, every PR title/description/comment, and every commit message are PUBLIC on the internet. Anything you (the agent) write into them is permanent and indexed by search engines. A leak cannot be unsent.

Never put any of the following into the GitHub issue (title/body/labels), the PR title, PR description, PR comments, commit messages, code comments, test code, test fixtures, golden output, or filenames:

  • Customer-identifying data — company names, account IDs, universe/cluster names or UUIDs, support case numbers, environment names, region/zone names tied to a customer deployment. Substitute with customer-1, acme-corp, or a generic description.
  • PII — real names, real email addresses, real phone numbers, real postal addresses, real IP addresses (public or private). In tests use only the documentation ranges: IPv4 192.0.2.0/24 / 198.51.100.0/24 / 203.0.113.0/24 (RFC 5737), IPv6 2001:db8::/32 (RFC 3849), hostnames example.com / example.org / example.net (RFC 2606), names Alice/Bob/Carol, phone numbers 555-0100–555-0199.
  • Unanonymized customer schema or queries — table names, column names, SQL text, query plans, or sample rows pulled from a real customer report. Reconstruct a synthetic minimal reproducer using generic identifiers (t1, users, id, value) that demonstrates the same defect.
  • Secrets / credentials — API keys, tokens, passwords, TLS certificates, private keys, license keys, kubeconfigs, production S3 buckets, internal Slack/JIRA/Linear URLs, internal hostnames, vault paths. Use placeholders like AKIAIOSFODNN7EXAMPLE in mocks.
  • YugabyteDB-internal information not yet public — unreleased roadmap, internal SLAs, embargoed security findings, internal infra hostnames.

This applies to the test code and test data you write too — .cc, .py, .java, .sql, golden .out files, YAML fixtures, mock responses, anything. If a customer's reproducer uses acme_orders with a customer_email column populated with real addresses, you must rewrite it as t1/email with user@example.com before the test goes anywhere near a PR.

Installs
1
GitHub Stars
10.5K
First Seen
May 16, 2026