بنقرة واحدة
pr
Open a draft pull request on GitHub. MUST use when you want to create/open a PR.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
Open a draft pull request on GitHub. MUST use when you want to create/open a PR.
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
MUST use when writing Bun/TypeScript scripts.
MUST use when writing Bun Native scripts. The script must start with //native to run on the native worker.
MUST use when writing Deno/TypeScript scripts.
MUST use when writing Python scripts.
MUST use when writing Ansible playbooks.
MUST use when using the CLI, including debugging job failures and inspecting run history via `wmill job`.
| name | pr |
| user_invocable | true |
| description | Open a draft pull request on GitHub. MUST use when you want to create/open a PR. |
Create a draft pull request with a clear title and explicit description of changes.
Follow conventional commit format for the PR title:
<type>: <description>
feat: New feature or capabilityfix: Bug fixrefactor: Code restructuringdocs: Documentation changeschore: Maintenance tasksperf: Performance improvements*_ee.rs files were modified, prefix with [ee]: [ee] <type>: <description>The body MUST be explicit about what changed. Structure:
## Summary
<Clear description of what this PR does and why>
## Changes
- <Specific change 1>
- <Specific change 2>
- <Specific change 3>
## Test plan
- [ ] <How to verify change 1>
- [ ] <How to verify change 2>
The harness/tooling that invoked the skill may add its own attribution trailer; the skill itself does not prescribe one.
If git diff main...HEAD --name-only matches ^frontend/, the PR body must include
screenshots of the affected UI. Skip only when there is no visible UI effect (types,
tests, build config) — and say so in the body.
Verify the change in the browser (AGENTS.md → "Verifying Frontend Changes").
Screenshot each affected page with mcp__playwright__browser_take_screenshot (save to a file).
Host each image and get its Markdown embed by pushing to the public
windmill-labs/agent-screenshots-internal repo. Pipe base64 through stdin —
passing it as -f content=… fails with argument list too long on real images:
REPO=windmill-labs/agent-screenshots-internal
IMG=screenshot.png # repeat per page
DEST="shots/$(git branch --show-current)/$(date +%s)-$(basename "$IMG")"
base64 -w0 "$IMG" | jq -Rs --arg m "add $DEST" '{message:$m, content:.}' \
| gh api -X PUT "repos/$REPO/contents/$DEST" --input - >/dev/null
echo ""
Derive $DEST from the file name (as above) so distinct pages never collide — a
fixed name would make same-second uploads reuse one path, and the second PUT
then 422s (the Contents API needs the existing file's sha to overwrite).
Put the printed  lines under a ## Screenshots heading in the PR body.
Requires gh (repo scope), jq, base64 — all in the devShell. The host repo is
public (so the raw URLs render for reviewers without a token) and its history is
permanent — never screenshot pages that show secrets or sensitive values (workspace
variables, resource values, instance settings, OAuth/SMTP config); deleting the file
can't undo an accidental capture. (GitHub's drag-and-drop uploader needs a browser
session and can't be driven from a token.)
If gh can't push to the host repo (e.g. a CI token scoped only to windmill), do
not fail the PR or skip silently — hand the upload to the user, who has push access,
and continue once they confirm it's done.
git status to check for uncommitted changesgit log main..HEAD --oneline to see all commits in this branchgit diff main...HEAD to see the full diff against mainlocal-review skill before creating the PR (/local-review in Claude Code, $local-review in Codex, pi --skill local-review / /skill:local-review in Pi). If issues are found, fix them and commit before proceeding. Do not skip this step.git diff main...HEAD --name-only matches ^frontend/, capture and embed screenshots of the affected UI per "Screenshots" above before writing the PR body (skip only if there is no visible UI effect).git rev-parse --abbrev-ref --symbolic-full-name @{u} 2>/dev/null || echo "no upstream"
git push -u origin HEADgh pr create --draft --title "<type>: <description>" --body "$(cat <<'EOF'
## Summary
<description>
## Changes
- <change 1>
- <change 2>
## Test plan
- [ ] <test 1>
- [ ] <test 2>
EOF
)"
*_ee.rs files were modified)The *_ee.rs files in the windmill repo are symlinks to windmill-ee-private — changes won't appear in git diff of the windmill repo. Instead, check the EE repo for uncommitted or unpushed changes.
Follow the full EE PR workflow in docs/enterprise.md. The key PR-specific details:
docs/enterprise.mdgit -C <ee-path> status --short
docs/enterprise.md[ee] prefix):
gh pr create --draft --repo windmill-labs/windmill-ee-private --title "<type>: <description>" --body "$(cat <<'EOF'
Companion PR for windmill-labs/windmill#<PR_NUMBER>
EOF
)"
ee-repo-ref.txt and push the updated windmill branch