dependabot-release
Merge open dependabot bundler PRs for a Rails repo, run the test suite, cut a patch release, and close the PRs. Works in ~/dev/<repo> clones.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Merge open dependabot bundler PRs for a Rails repo, run the test suite, cut a patch release, and close the PRs. Works in ~/dev/<repo> clones.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Check health of the homelab-backup service — last run status, next scheduled run, R2 bucket contents, and local archive state. Quick mobile-friendly summary.
Delete a blog post or review from blog.carter2099.com. Soft-deletes the markdown file (moved to deleted/ directory) and destroys the database record.
Edit an existing blog post or review on blog.carter2099.com. Find by title/ID, show current content, collaboratively revise, preview changes, then update.
Create a new blog post on blog.carter2099.com. Collaboratively draft and polish markdown content, preview it, then publish — triggering subscriber email notifications via the Rails app.
Create a new review on blog.carter2099.com (Book, Movie, Show, Product, or Video Game). Collaboratively draft content, preview it, then publish — triggering subscriber email notifications via the Rails app.
Audit the homelab for outdated software and report findings. Use when user says "check for updates", "what's outdated", "audit the homelab", "run update check", or wants a system health report.
| name | dependabot-release |
| description | Merge open dependabot bundler PRs for a Rails repo, run the test suite, cut a patch release, and close the PRs. Works in ~/dev/<repo> clones. |
Merge all open dependabot bundler PRs for a Rails repo, run tests, cut a patch version increment, push + tag, and close the dependabot PRs. Mirrors what the automated webhook agent does, but interactive.
If no repo is given as an argument, ask which repo to target (e.g. delta_neutral, blog). Confirm the full GitHub path (carter2099/<repo>).
# Clone if not present
ls ~/dev/<repo> || git clone git@github.com:carter2099/<repo>.git ~/dev/<repo>
cd ~/dev/<repo>
git checkout main && git pull origin main
gh pr list --repo carter2099/<repo> --author "app/dependabot" --json number,title,headRefName,state
Filter to OPEN PRs whose headRefName starts with dependabot/bundler/. If none, report and stop.
Do NOT read PR bodies or release notes — use only the structured gh pr list output.
For each open dependabot/bundler/* PR (parse gem name from headRefName, e.g. dependabot/bundler/puma-8.0.0 → gem = puma):
RBENV_VERSION=$(cat .ruby-version 2>/dev/null || echo 3.4.3) bundle update <gem> --conservative
git add Gemfile.lock
git commit -m "Bump <gem> from <old> to <new>"
Read old/new versions from the Gemfile.lock diff — not from the PR.
Also check for pre-existing security advisories (bin/bundler-audit) and bump any vulnerable gems that aren't already covered by the dependabot PRs.
RBENV_VERSION=$(cat .ruby-version 2>/dev/null || echo 3.4.3) bin/rake
If ANY failure: STOP. Do not push anything. Report the failure and let the user decide.
Read config/version.rb. Increment the patch digit (e.g. 0.1.5 → 0.1.6).
Update CHANGELOG.md: add a new ## [X.Y.Z] - <today> section above the previous version entry.
git add config/version.rb CHANGELOG.md
git commit -m "version to X.Y.Z"
git push origin main
git tag vX.Y.Z
git push origin vX.Y.Z
For each PR number from Step 3:
gh pr close <n> --repo carter2099/<repo> --comment "Applied directly in batch release X.Y.Z"
Report: version bumped from X to Y, N gems updated, PRs closed, tag pushed. Ask if the user wants to deploy now (point them at the deploy-app skill).
dependabot-webhook agent. Same workflow, same rules — no PR bodies, no release notes in the prompt.