# WP.org Ready > Get a SaaS connector plugin through WordPress.org review. Paste the plugin's readme.txt, its main-file header (the > /* Plugin Name: ... */ comment) and the code that calls your service, answer a short interview, and the browser > checks it against the WordPress.org plugin directory's review rules; then the metered runs plan the submission and > answer the reviewer's email. Built on the SkillSafe skill @samber/wordpress-plugin-directory-playbook, from > samber/developer-platform-skills (MIT), by Samuel Berthe. > Not affiliated with WordPress.org or the WordPress Foundation. > Scope: SaaS connector plugins on WordPress.org only - not themes, not PHP code review in general, not premium > plugins sold only off WordPress.org. https://wporg-ready.skillsafe.ai/ ## What is free - Parsing: the readme's === Name === line, its header fields (Contributors, Tags, Requires at least, Tested up to, Requires PHP, Stable tag, License, License URI), the short description and the == sections == (External services and its third-party variants included); the main file header (Plugin Name, Plugin URI, Description, Version, Author, Author URI, License, Text Domain, Requires at least, Requires PHP, Update URI). - The code scan, with a fixed set of signal kinds: remote_call, host, license_lock, iframe_admin, remote_asset (fonts counted apart), update_checker, activation_ping, telemetry, powered_by, compliance_claim, opt_in. - The checks, each with an id, the skill's rule and pass, fix, fail or n/a: trialware (rule 1); services_documented and services_links (rule 2: every host the code calls named in an External services section with terms and privacy); consent (rule 3: telemetry or an activation ping needs a default-off opt-in); iframe_admin, remote_assets and update_checker (rule 4); name_brand and account (rule 5: a brand-first name only for your own brand, the company account, no free-mail domain); slug_words, text_domain, name_match and headers_complete (name, account and slug); stable_tag, tested_up_to, zip_size and timeline (release); tags and tags_brands (search rank: more than 12 tags is spam, only five count, no competitor's name); powered_by and compliance_claim (rule 7); short_desc, contributors and requires_header (the submission packet). - Where paid value lives, ranked: a directory connector with paid features enforced by your service; a directory plugin plus a premium add-on sold on your site (promoted when paid features must run inside WordPress); a self-hosted zip only (promoted only when an iframed admin app or your own updater is core and you keep it). - The stage's plan: not submitted - the submission packet with an owner per item and the timeline; in review - the reviewer's numbered points; live, release blocked or closed - the cause, the next release or reply, and the obligations at risk. - Exports: the checks (.csv), a corrected readme header with an External services block per detected host and placeholders for what, data sent, when, terms and privacy (.txt), and everything (.json). - Every figure the skill quotes carries a dagger: about 1,050† plugins in the queue, a cooldown of 6 hours†, a zip under 10 MB†, 3 months†, about 10 business days†, 6 to 14 days†, 6 months†, a 24-hour† delay, 10,000† installs. † verify against the current developer.wordpress.org handbook and make.wordpress.org/plugins; the release process changes often. - A theme is out of scope: the page says so and the runs are blocked. ## The metered lanes Two tasks on gpt-terra, metered per run, routed by `task`. Input string fields: `task` (plan or reply), `plugin`, `readme`, `header`, `code`, `review` (reply only: the reviewer's email), `carry` (reply only: the plan's fixes) and `facts`. - `plan` replies with `summary`, `verdict` (`rung` service, addon or selfhosted, `why`), `fixes` (`check`, `rule`, `change`, `where` readme, header, code, account or service), `services` (`host`, `what`, `data`, `when`), `packet` (`item`, `owner`, `done`), `timeline` (`step`, `wait`), `footnote` and `caveats`. - `reply` replies with `summary`, `points` (`n`, `reviewer`, `fix`, `check`), `email` (`subject`, `body`), `footnote` and `caveats`. The page holds every reply to its own facts: the plan keeps the page's top rung (a moved rung is put back), carries every fail check as a fix, gives every detected host exactly one services entry and invents none; the reply answers at least as many points as the email numbers, keeps the thread's subject, lists every point in a numbered body that says the fixes are in one upload, never argues and never asks to jump the queue; both carry the dagger on every figure, the footnote, no URL and no backticks. ## Links - API tutorial: https://wporg-ready.skillsafe.ai/api.html - Source skill: https://skillsafe.ai/skill/@samber/wordpress-plugin-directory-playbook - Source repository: https://github.com/samber/developer-platform-skills