ワンクリックで
vmemo-github-pull-request-skill
Run the full GitHub PR lifecycle: create, update, assign, and keep PR content in sync with new commits.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Run the full GitHub PR lifecycle: create, update, assign, and keep PR content in sync with new commits.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Unified Vmemo local development workflow: setup-state check, reset decision, and temporary port conflict handling.
Prepare a Vmemo release PR with explicit config-change confirmation gates.
Create concise incident postmortems at others/postmortem/YYYY-MM-DD-title.md for non-trivial bugs or issues.
开发时必须遵守 Vmemo 的编码规范与工程约束。
Use when working on Phoenix projects with Tidewave MCP. Prefer Tidewave tools for code discovery, docs lookup, runtime checks, and database verification instead of ad-hoc guessing.
Use this skill when publishing or updating the Vmemo Zeabur template, including pre-publish validation, manual Zeabur console steps, and post-publish link updates.
| name | vmemo-github-Pull-Request-skill |
| description | Run the full GitHub PR lifecycle: create, update, assign, and keep PR content in sync with new commits. |
Use this skill whenever the user asks for any GitHub Pull Request work: creating, updating, maintaining, or synchronizing PR content.
Execute the PR workflow end-to-end with consistent quality gates:
--body-file), never inline multi-line \\n shell strings.feat(scope): ...fix(scope): ...chore(scope): ...main branch and no PR exists, create one.To avoid missing foundational checks, follow these gates strictly:
git commit, you must actually run (not just claim) the smallest relevant validation set for the current change:
mix formatmix compile --warnings-as-errorsmix test targets first (expand scope only when needed)git push, if any new code changes or commits were added, rerun the same checks (at least impacted scope; default is full run).gh pr create or gh pr edit, confirm the current branch state has passed checks.Run before any git commit:
mix format
mix compile --warnings-as-errors
mix test test/path/to_changed_test.exs
If the task depends on mise-provided tools or environment, prepare mise first. Never use mise exec.
mise trust && mise install
mix format
mix compile --warnings-as-errors
mix test test/path/to_changed_test.exs
If a Mix command fails because DATABASE_URL, TYPESENSE_URL, or another runtime env var is missing, fix local mise/environment setup and retry the normal Mix command before reporting a blocker.
Rules:
mix compile must use --warnings-as-errors to stay CI-equivalent.mix test only if scope/risk requires it.mix gettext.extract --merge
scripts/check_gettext_sync.sh
Before any git push, ensure latest branch state has passed:
mix format
mix compile --warnings-as-errors
mix test test/path/to_changed_test.exs
Rules:
mix gettext.extract --merge
scripts/check_gettext_sync.sh
Before push, ensure at least:
mix compile --warnings-as-errors
Run:
git rev-parse --abbrev-ref HEAD
Constraints:
main.main, ask user to switch to a feature branch first.Run:
CURRENT_BRANCH=$(git rev-parse --abbrev-ref HEAD)
git fetch --all --prune
gh pr list --head "$CURRENT_BRANCH" --state all --json number,baseRefName,url,isDraft,title,assignees
Rules:
baseRefName first.Only run when no PR exists for current branch.
git for-each-ref --format='%(refname:short)' refs/remotes/origin \
| sed 's#^origin/##' \
| rg '^(main|master|release/.+)$'
MB=$(git merge-base HEAD origin/<candidate>)CURRENT_BRANCH.Tie-breaker priority:
mainmasterrelease/* (most recent)feat(scope): ...fix(scope): ...chore(scope): ...scope short and clear.--body-file.\\n shell strings.Body template:
## Summary
- ...
## Why
- ...
## Validation
1. ...
2. ...
## Related
- Issues: ...
- PRs: ...
## Background (Screenshots)
- Current behavior:
- 
- Expected behavior / comparison:
- 
## Notes
- Keep as Draft if still WIP.
Prepare body file first, then run:
gh pr create \
--base "$BASE" \
--head "$CURRENT_BRANCH" \
--title "$PR_TITLE" \
--body-file "$PR_BODY_FILE" \
--assignee "$ASSIGNEE"
If still WIP, add --draft.
Assignee rules:
--assignee is required.ASSIGNEE=$(gh api user --jq .login)
When new commits are pushed to an existing PR branch, you must sync PR metadata.
Required actions:
Recommended command:
gh pr edit <number-or-url> \
--title "$PR_TITLE" \
--body-file "$PR_BODY_FILE" \
--add-assignee "$ASSIGNEE"
Notes:
gh option support may vary by version; if --assignee is unavailable, use --add-assignee.Status toggles:
gh pr ready <number-or-url>gh pr ready <number-or-url> --undoWhen there are meaningful incremental changes, add a comment:
gh pr comment <number-or-url> --body "New commits pushed; PR description has been synchronized."
Return:
AGENTS.md.mix compile --warnings-as-errors.\\n; always use --body-file.