browser-validator
Automatically validate implementations in real browsers after code is written or when user says "test this", "test what you built…
Generate a PR description and create a GitHub pull request. Invoke when user wants to create a pull request, says "create a PR", "submit a PR", "open a pull request", or uses /pr-create. Creates the PR as soon as the description is ready, with no approval step, then shows the
Claude Code
$ npx -y skills add kanopi/cms-cultivator --skill pr-create --agent claude-code
Codex
$ npx skills add kanopi/cms-cultivator --skill pr-create -a codex -y
Cursor
$ npx skills add kanopi/cms-cultivator --skill pr-create -a cursor -y
Gemini CLI
$ npx skills add kanopi/cms-cultivator --skill pr-create -a gemini-cli -y
GitHub Copilot
$ npx skills add kanopi/cms-cultivator --skill pr-create -a github-copilot -y
OpenCode
$ npx skills add kanopi/cms-cultivator --skill pr-create -a opencode -y
Windsurf
$ npx skills add kanopi/cms-cultivator --skill pr-create -a windsurf -y
name: pr-create description: Generate a PR description and create a GitHub pull request. Invoke when user wants to create a pull request, says "create a PR", "submit a PR", "open a pull request", or uses /pr-create. Creates the PR as soon as the description is ready, with no approval step, then shows the description and URL so CI and preview environments can start testing. Writes terse descriptions and supports ticket numbers.
Generate a terse PR description and create a GitHub pull request. The main session runs this skill directly — no orchestrator agent is involved.
**This skill creates a GitHub pull request** — a publicly visible, permanent action that:
**No approval step.** The PR is the fastest route to CI, preview environments, and the test suites that run against them, so this skill creates it as soon as the description is ready and shows the result afterwards. The description can be changed with `gh pr edit` once it exists. Review happens on the PR, not before it.
Run in parallel:
branch; never assume `main` (many Kanopi repos use `master`). Without `gh`: `git symbolic-ref refs/remotes/origin/HEAD | sed 's@^refs/remotes/origin/@@'`
If on the default branch, stop and tell the user to switch to a feature branch first.
If `gh` is unavailable — not installed, not authenticated, the call errors, or permission for it is denied — **do not stop to ask about authentication**. A missing `gh` never blocks steps 3–6: switch to the Environment fallback (below) and continue the analysis; only the final creation step becomes a manual command for the user. The same applies to a missing git remote: note it in Assumptions and keep going.
Run in parallel:
Where `<base>` is typically `main` or `1.x` (whichever the repo uses as the default branch — check with `gh repo view --json defaultBranchRef --jq .defaultBranchRef.name`).
Scan the diff for platform-specific changes:
**Drupal indicators:**
**WordPress indicators:**
**Any platform:**
Name the exact command wherever the project has one — check its deploy scripts, CI config, and README. Omit Deploy Notes only when the diff needs nothing beyond a routine deploy.
Use Read, Grep, and Bash directly — no Task() spawns required:
Note findings briefly in the PR description's relevant sections. Do **not** block PR creation on findings — surface them so the reviewer can decide.
**Resolve the template explicitly** — the repository first, then the org's `.github` repository — following [`references/template-resolution.md`](references/template-resolution.md). Step 7 passes the body with `--body-file`, which skips `gh`'s own template population, so never rely on `gh` to insert it.
If neither exists, use the template below — Kanopi's org default. Complete every section the resolved template contains; omit one only when it genuinely does not apply.
## Description Teamwork Ticket(s): [PROJ-12
Specialist agents and auto-invoked skills for Drupal/WordPress development. Works in Claude Code, Claude Desktop, and OpenAI Codex. Full documentation: What changed in 2.0? CMS Cultivator now focuses on CMS development workflows.
Automatically validate implementations in real browsers after code is written or when user says "test this", "test what you built…
Run the right linting, formatting, and static-analysis commands after changing code, and check it against PHPCS, ESLint,…
Automatically generate conventional commit messages when user has staged changes and mentions committing. Analyzes git diff and…
Generate and maintain patches for Composer-installed packages (Drupal contrib modules, WordPress packages, PHP libraries) using…
Automatically analyze test coverage when user asks which code is tested, mentions coverage gaps, or shows code asking about…
Deterministic cleanup of DDEV and Docker disk usage on OrbStack, Docker Desktop, or any Docker provider. Safely reclaims space by…
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or…
Ask which skill or flow fits your situation. A router over the skills in this repo.