Handbook GitHub ↗

Give your AI live access to WordPress.

AI Forge is a small program you run on your own computer. It lets Claude or Codex pull the real WordPress release data (commits, tickets, contributors) and turn it into things like a ready-to-post changelog. You ask in plain language; it fetches the facts and hands them back, source-linked.

Install it See example prompts

New here? In one breath: WordPress ships new versions constantly. Writing up "what changed" means digging through hundreds of GitHub PRs and Trac tickets by hand. AI Forge does the digging, so your assistant just asks it and you get the grounded changelog. The changelog is the first capability; more are on the way, and anyone can build one.

How it works

Think of AI Forge as a relay station between your AI assistant and the WordPress world (GitHub + WordPress.org). It runs locally and speaks MCP, the protocol Claude and Codex use to call tools.

1. You ask

In plain language, in Claude Code, Claude Desktop or Codex, or the browser app.

2. It fetches

The real commits, tickets and contributors, fully paginated: no guessing, no made-up numbers.

3. You get facts

A grouped, source-linked changelog. Every claim traces to a real PR or ticket.

Everything is local and yours: your keys stay on your machine, sent only to GitHub and WordPress.org.

Install

Pick whichever fits how you work. All three use the same engine.

① In Claude Code: the whole app as a plugin

Best if you live in the terminal and want to just talk to your assistant.

/plugin marketplace add unleash-wp/ai-forge
/plugin install uwp-ai-forge@unleashwp-ai-forge

Restart Claude Code. The uwp-ai-forge MCP server connects automatically. Now ask away (see prompts). This gives you the data tools (get_changelog, list_milestones, list_branches) and the release-post skill.

② In your browser: the visual app

A guided setup UI, date pickers and copy buttons. Needs Node 18+.

npx @unleashwp/ai-forge@latest serve

Then open http://localhost:4321. Sign in to GitHub with one click, pick a date range, press Generate.

③ In Claude Desktop: one-click bundle

The full visual app renders as a window inside the assistant.

Install the .mcpb bundle from the latest release (double-click to open in Claude Desktop), or add the same plugin as in ①. Then a prompt like "open AI Forge" renders the app.

One thing before your first full changelog: connect GitHub. A full changelog makes ~50 GitHub API calls, and without auth you're capped at 60/hour. The browser app has a one-click "Sign in with GitHub" (see Connectors), or have the gh CLI logged in. The base changelog itself needs no account and no WordPress.org login.

Example prompts

Once AI Forge is connected, talk to your assistant like this:

PromptGenerate the WordPress 7.1 changelog for July 15–22 as a release post.
PromptHow many changes landed in Gutenberg and Core between 2026-07-19 and today?
PromptDraft the WordPress 7.1 release post. Pull the real PRs and tickets, and link every highlight to its source.
PromptList the open release milestones, then give me the changelog for the latest one this week.
PromptShow me the contributors with props in the WordPress 7.1 window, grouped by count.

Your assistant fills in the exact dates, milestone and branch from your request. You don't need to remember any flags.

Connectors

Connectors are how AI Forge reaches your data and your AI. You set them once, in Settings → Connectors (browser app) or via the CLI.

ConnectorWhat it doesRequired?
GitHubOne-click sign-in. Raises the API limit from 60 to 5,000 requests/hour, needed for a full changelog. No scopes, reads public repos only.For full changelogs
WordPress.orgAdds deep mode: the full Trac ticket text. The base changelog runs without it.Optional
Claude Code / Desktop / CodexRegisters AI Forge as an MCP server so your assistant can call it live.To use it from your AI

Your keys are stored locally in owner-only files, never shared or sent to the model.

The Changelog Generator

The first plugin, bundled in. It turns a date window into a release-post changelog for WordPress Core and Gutenberg.

  • Inputs: a start date, an end date, and (optionally) a milestone like 7.1, which points Gutenberg at the wp/7.1 branch.
  • Outputs: a technical report, a fill-in release-post template, or raw JSON.
  • Grounded: every prose highlight must trace to a real PR or ticket. It never invents features or estimates counts.
  • Sources: GitHub (Gutenberg + wordpress-develop), the cookie-free WordPress dev-notes tracker for Core grouping, and Trac for ticket counts.

From the CLI, the same engine:

uwp-ai-forge changelog --since 2026-07-15 --until 2026-07-22 --milestone 7.1 --post

Updating

AI Forge updates itself from the public GitHub repo. Nothing installs on its own; you choose when. In the browser app: Settings → Updates → Update AI Forge. From the CLI:

uwp-ai-forge update

It picks the right step for how you installed it (git pull + build, or npm i -g …@latest). Community plugins you added live in ~/.config/uwp-ai-forge/plugins and survive every update.

FAQ

Do I need a GitHub account?

No account to try it. A token (or a one-click sign-in) is optional, but it raises the API limit to 5,000/hour, needed for a full release changelog.

What is "deep mode"?

It adds the full Trac ticket text from WordPress.org. It needs the WordPress.org cookie connector. The base changelog runs cookie-free.

Where are my keys stored?

On your own machine, in owner-only files. They're never shared and never sent to the AI model.

Is it free?

Yes, open source under GPL-2.0-or-later. Every capability is a plugin; the free core stays free.

Is this an official WordPress project?

No. It's an independent project by Benjamin Zekavica (Morvance / UnleashWP), not affiliated with the WordPress Foundation or Automattic Inc.


Build a plugin

AI Forge is a platform: every capability is a plugin, and the community is warmly invited to add their own. A plugin is a folder under plugins/<id>:

FilePurpose
plugin.jsonThe manifest: id, name, description, icon.
server.mjsExports routes, mcpTools, skills, commands. The server side.
client.jsxA default-exported React component. The browser UI.

Scaffold one:

npm run new-tool -- my-plugin "My Plugin"
Good to know for community plugins: installed plugins live in ~/.config/uwp-ai-forge/plugins, outside the app, so updates never delete them. Their server side (MCP tools + skills, the AI-facing value) works on every install method. A browser UI is bundled at build time, so a plugin that only exposes MCP tools works everywhere; one with its own screen shows in the browser/desktop app.

See CONTRIBUTING.md and the good first issues to start.

Deploy this handbook

This page is a single self-contained file at docs/index.html, served by GitHub Pages. To publish it:

1
In the repo: Settings → Pages → Source = Deploy from a branch, branch main, folder /docs.
2
For a subdomain (e.g. docs.unleash-wp.com): add a CNAME file in docs/ with that hostname, and a DNS CNAME record pointing to <user>.github.io.
3
A .nojekyll file in docs/ tells Pages to serve the HTML as-is (already added).

Plain HTML, no build step: edit the file, push, and Pages redeploys.