wordpress-plugin-publish

작성자: automattic

Use this skill when publishing, submitting, reuploading, verifying, packaging, checking, demoing, or releasing WordPress.org plugins with Pressship. It covers…

npx skills add https://github.com/automattic/pressship --skill wordpress-plugin-publish

WordPress Plugin Publish

Use Pressship for WordPress.org plugin submission and release work. Prefer npx pressship unless the user explicitly wants the local checkout version or the WP-CLI package (wp ship).

Install Surfaces

Use the install surface the user asks for:

npx pressship verify .
wp package install f/pressship
wp ship verify .
npm install -g pressship
pressship verify .

For agent skill installation:

npx skills add f/pressship --skill wordpress-plugin-publish -a codex
npx skills add f/pressship --skill wordpress-plugin-publish -a claude-code

Safety Rules

  • Never publish, submit, reupload, or release without first running a dry run, unless the user explicitly says to skip it.
  • Do not push git commits or tags unless the user explicitly asks.
  • Report Plugin Check findings clearly. Do not hide them just because Pressship can continue.
  • Use repeatable excludes for large or source-only files. Prefer .pressshipignore when the project already has one.
  • Use --no-verify only when the user explicitly asks to bypass readme validation and Plugin Check.
  • If Pressship prompts interactively, answer only with user-approved or obvious plugin metadata.
  • If authentication fails, run npx pressship login and let the user complete WordPress.org login.
  • For approved-plugin SVN releases, expect Pressship to verify before SVN changes, reject already-published versions, and ask for a generated WordPress.org SVN password when needed.

Orientation

From the plugin directory:

npx pressship whoami
npx pressship verify .
npx pressship status .
npx pressship info .
npx pressship info --remote

Use status to determine whether publish will target a pending submission reupload or an approved SVN release. Use verify when you need readme validation and Plugin Check without creating a zip.

Local Playground Test

Start a local WordPress Playground with the plugin mounted:

npx pressship demo .

Useful options:

npx pressship demo . --port 9401
npx pressship demo . --wp 6.8 --php 8.3
npx pressship demo . --reset
npx pressship demo . --skip-browser

Verify And Package

Run the publishing checks without creating a zip:

npx pressship verify .

Create a validated WordPress-installable zip without uploading:

npx pressship pack .

For projects with bulky assets or source-only files, pass explicit ignores:

npx pressship pack . --ignore "assets/**" --ignore "src/**" --ignore "node_modules/**"

pack, publish, submit, and SVN release verify by default. If the user explicitly chooses to bypass checks, use the unified flag:

npx pressship pack . --no-verify
npx pressship publish . --no-verify

Inspect package file count and included paths. Make sure the ZIP contains runtime PHP, built assets, readme.txt, and any required examples or static assets. Confirm .pressship-svn is never included.

Submit Or Reupload Pending Review

Use this for new plugins or WordPress.org submissions still awaiting review.

Dry run first:

npx pressship publish . --dry-run -y

Then upload:

npx pressship publish . -y

When the project contains large non-distribution directories, repeat the same ignore flags in both commands:

npx pressship publish . --dry-run -y \
  --ignore "assets/**" \
  --ignore "src/**" \
  --ignore "scripts/**" \
  --ignore "package.json" \
  --ignore "package-lock.json" \
  --ignore ".github/**" \
  --ignore "node_modules/**" \
  --ignore "dist/**"

npx pressship publish . -y \
  --ignore "assets/**" \
  --ignore "src/**" \
  --ignore "scripts/**" \
  --ignore "package.json" \
  --ignore "package-lock.json" \
  --ignore ".github/**" \
  --ignore "node_modules/**" \
  --ignore "dist/**"

After upload, confirm:

npx pressship status .

Release Approved Plugin

Use this only when the plugin is already approved and the user wants a WordPress.org release.

For an existing WordPress.org plugin, the normal SVN-based edit flow is:

npx pressship get my-plugin ./my-plugin
cd ./my-plugin
npx pressship version patch
npx pressship publish --release --dry-run -y
npx pressship publish --release -y

Pressship treats the SVN checkout root as the project root and edits trunk/. It should stop with "No version change detected" if the target tag already exists.

Dry run first:

npx pressship publish . --release --dry-run -y

Then release:

npx pressship publish . --release -y

If Pressship cannot infer the slug or username:

npx pressship release . --slug my-plugin --username WpOrgUser --dry-run
npx pressship release . --slug my-plugin --username WpOrgUser -y

If svn is missing, let Pressship detect the OS and offer installation, or pass --no-install-svn only when the user wants manual setup. If the SVN password is missing, Pressship points to the user's WordPress.org SVN password page and saves the generated password locally after they provide it.

Version Bumps

Only run version bumps when the user asks:

npx pressship version patch .
npx pressship version minor .
npx pressship version major .

After a version bump, review changed plugin headers, readme.txt stable tag, and changelog.

Final Report

Always include:

  • Whether a dry run was run.
  • Whether verify ran and whether validation was bypassed.
  • Package size and notable included/excluded files.
  • Plugin Check result summary.
  • Upload/release status and slug.
  • SVN checkout/tag status for approved releases.
  • Whether git was left untouched or changed.

automattic의 다른 스킬

wp-phpstan
automattic
WordPress 프로젝트(플러그인/테마/사이트)에서 PHPStan 정적 분석을 설정, 실행 또는 수정할 때 사용: phpstan.neon 설정, 기준선,…
official
wp-playground
automattic
WordPress Playground 워크플로우에 사용: 브라우저 또는 @wp-playground/cli(서버, run-blueprint, build-snapshot)를 통해 로컬에서 빠르게 일회용 WP 인스턴스를 실행합니다.
official
wp-plugin-development
automattic
WordPress 플러그인 개발 시 사용: 아키텍처 및 훅, 활성화/비활성화/제거, 관리자 UI 및 설정 API, 데이터 저장, 크론/작업, 보안…
official
wp-project-triage
automattic
WordPress 저장소(플러그인/테마/블록 테마/WP 코어/Gutenberg/전체 사이트)의 도구/테스트/버전 등을 포함한 결정론적 검사가 필요할 때 사용합니다.
official
wp-rest-api
automattic
WordPress REST API 엔드포인트/라우트를 구축, 확장 또는 디버깅할 때 사용: register_rest_route, WP_REST_Controller/컨트롤러 클래스, 스키마/인수…
official
wp-wpcli-and-ops
automattic
WP-CLI(wp)를 사용하여 WordPress 작업을 수행할 때 사용: 안전한 검색-바꾸기, DB 내보내기/가져오기, 플러그인/테마/사용자/콘텐츠 관리, 크론, 캐시 플러싱 등
official
wpds
automattic
WordPress 디자인 시스템(WPDS)과 그 컴포넌트, 토큰, 패턴 등을 활용하여 UI를 구축할 때 사용합니다.
official
woocommerce-finalize
automattic
WooCommerce 플러그인을 위한 사전 릴리스 코드 건강 및 추적성 감사. 코드 리뷰 후 실행되며, 죽은 코드, 중복, 구조적 복잡성 등을 중점적으로 확인합니다…
official