Skills wordpress

OpenClaw skill that provides a WordPress REST API CLI for posts, pages, categories, tags, users, and custom requests using plain HTTP.

install
source · Clone the upstream repo
git clone https://github.com/openclaw/skills
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/akkualle/akkualle-wordpress-api" ~/.claude/skills/openclaw-skills-wordpress && rm -rf "$T"
OpenClaw · Install into ~/.openclaw/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/openclaw/skills "$T" && mkdir -p ~/.openclaw/skills && cp -r "$T/skills/akkualle/akkualle-wordpress-api" ~/.openclaw/skills/openclaw-skills-wordpress && rm -rf "$T"
manifest: skills/akkualle/akkualle-wordpress-api/SKILL.md
source content

WordPress REST API Skill (Advanced)

Purpose

Provide a production-ready CLI for WordPress REST API automation. This skill focuses on content workflows (posts/pages), taxonomy (categories/tags), user reads, and safe custom requests without external HTTP libraries.

Best fit

  • You want a stable CLI for automation and bot workflows.
  • You need JSON-in/JSON-out for pipelines.
  • You prefer simple HTTP with no extra dependencies.

Not a fit

  • You must handle OAuth flows or complex browser-based auth.
  • You need advanced media uploads (multipart streaming).

Requirements

  • Node.js 18+ (for native
    fetch
    ).

One-time setup

  1. Enable the WordPress REST API (default in modern WordPress).
  2. Create an Application Password for a WordPress user.
  3. Confirm the user has the right role (e.g., Editor/Admin).

Install

cd wordpress
npm install

Run

node scripts/wp-cli.js help
node scripts/wp-cli.js posts:list --query per_page=5
node scripts/wp-cli.js posts:create '@post.json'

You can also use npm:

npm run wp -- posts:list --query per_page=5

Credentials

Supported options (first match wins):

  • Basic auth token:
    WP_BASIC_TOKEN
    (base64 of
    user:app_password
    )
  • User + app password:
    WP_USER
    +
    WP_APP_PASSWORD
  • JWT bearer token:
    WP_JWT_TOKEN

Required env

  • WP_BASE_URL
    (e.g.,
    https://example.com
    )

Input conventions

  • JSON can be inline or loaded from file with
    @path
    .
  • Query params use
    --query key=value
    (repeatable) or
    --query key1=value1,key2=value2
    .

Command map (high level)

Posts:

  • posts:list
    ,
    posts:get
    ,
    posts:create
    ,
    posts:update
    ,
    posts:delete

Pages:

  • pages:list
    ,
    pages:get
    ,
    pages:create
    ,
    pages:update
    ,
    pages:delete

Taxonomy:

  • categories:list
    ,
    categories:create
  • tags:list
    ,
    tags:create

Users:

  • users:list
    ,
    users:get

Advanced:

  • request
    (raw method + path)

Operational guidance

  • Prefer
    context=view
    for read-only list calls.
  • Use
    status=draft
    when staging content.
  • Implement retries for
    429
    and transient
    5xx
    errors in orchestrators.

Expected output

  • JSON to stdout; non-zero exit code on errors.

Security notes

  • Never log or commit tokens or application passwords.
  • Use a dedicated low-privilege WordPress account where possible.