WP Manifestindependent plugin directory
manifest / ai / ps-agentready

PS AgentReady

Makes your site agent-ready by adding markdown for agents and content signals in robots.txt

by Per Soderlind · github.com/soderlind/ps-agentready · website

1stars
7release downloads
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/soderlind/ps-agentready/releases/download/1.0.0/ps-agentready.zip

Readme

PS AgentReady

WordPress plugin — makes your site agent-ready as tested by isitagentready.com.

Features

Markdown for Agents

When an HTTP client sends Accept: text/markdown, the plugin returns a clean Markdown version of the page instead of HTML. Browsers are unaffected.

curl -H "Accept: text/markdown" https://your-site.com/

Response headers:

Content-Type: text/markdown; charset=utf-8
Vary: Accept
X-Markdown-Tokens: 1842

The Markdown output:

  • Strips non-content chrome (header, footer, nav, aside, scripts, styles, WP admin bar)
  • Prepends a YAML frontmatter block from <meta name="title/description"> and <meta property="og:*"> tags
  • Appends JSON-LD structured-data as a fenced json code block
  • Approximates token count via ceil(strlen / 4) reported in X-Markdown-Tokens

Content Signals (robots.txt)

Appends a Content-Signal directive to robots.txt declaring how AI crawlers may use your content:

# PS AgentReady — Content Signals (https://contentsignals.org/)
User-agent: *
Content-Signal: ai-train=no, search=yes, ai-input=no

Each signal (ai-train, search, ai-input) can be set to yes, no, or omit (no declaration).

Requirements

  • PHP 8.3+
  • WordPress 6.9+
  • Network activation required (single-site installs are supported too)
  • Composer dependencies (see Installation)

Installation

From a release zip

Download the latest ps-agentready.zip from Releases, upload via Plugins → Add New → Upload Plugin, then network-activate.

From source

git clone https://github.com/soderlind/ps-agentready.git
cd ps-agentready
composer install --no-dev --optimize-autoloader

Copy the folder to wp-content/plugins/ and network-activate.

Configuration

On multisite: Network Admin → Settings → PS AgentReady
On single-site: Settings → PS AgentReady

Setting Default Description
Markdown for Agents Enabled Return text/markdown on matching Accept requests
ai-train no AI model training
search yes Search indexing and results
ai-input no AI input / RAG / grounding

Development

composer install
composer test        # runs Pest test suite
vendor/bin/pest      # same, explicit

Test suite

49 unit tests across three files:

File Coverage
tests/Unit/SettingsSanitizeTest.php Settings::sanitize(), Settings::get_options()
tests/Unit/ContentSignalsTest.php ContentSignals::append_content_signals()
tests/Unit/MarkdownNegotiationTest.php MarkdownNegotiation::convert_to_markdown() — frontmatter, JSON-LD, element stripping, token count

GitHub Actions

Workflow Trigger
on-release-add.zip.yml GitHub release published → builds and attaches ps-agentready.zip
manually-build-zip.yml Manual (workflow_dispatch) with tag input

Both workflows run composer install --no-dev --optimize-autoloader and verify that vendor/yahnis-elsts/plugin-update-checker and vendor/league/html-to-markdown are included in the zip.

Validation

Use isitagentready.com to scan your site, or call the API directly:

curl -X POST https://isitagentready.com/api/scan \
  -H "Content-Type: application/json" \
  -d '{"url": "https://your-site.com"}'

Check that checks.contentAccessibility.markdownNegotiation.status and checks.botAccessControl.contentSignals.status both equal "pass".

Contributing

License

GPL-2.0-or-later. See LICENSE.

Read the full README on GitHub →

Releases

TagPublishedAssetDownloads
1.0.0 May 4, 2026 ps-agentready.zip 7