claude-plugin-wordpress-manager 2.12.2 → 2.13.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/.claude-plugin/plugin.json +8 -3
  2. package/CHANGELOG.md +55 -0
  3. package/docs/GUIDE.md +240 -1
  4. package/docs/VALIDATION.md +341 -0
  5. package/docs/plans/2026-03-02-content-framework-architecture.md +612 -0
  6. package/docs/plans/2026-03-02-content-framework-strategic-reflections.md +228 -0
  7. package/docs/plans/2026-03-02-content-intelligence-phase2.md +560 -0
  8. package/docs/plans/2026-03-02-content-pipeline-phase1.md +456 -0
  9. package/docs/plans/2026-03-02-editorial-calendar-phase3.md +490 -0
  10. package/docs/validation/.gitkeep +0 -0
  11. package/docs/validation/dashboard.html +286 -0
  12. package/docs/validation/results.json +1705 -0
  13. package/package.json +12 -3
  14. package/scripts/run-validation.mjs +1132 -0
  15. package/servers/wp-rest-bridge/build/server.js +16 -5
  16. package/servers/wp-rest-bridge/build/tools/index.js +0 -9
  17. package/servers/wp-rest-bridge/build/tools/plugin-repository.js +23 -31
  18. package/servers/wp-rest-bridge/build/tools/schema.js +10 -2
  19. package/servers/wp-rest-bridge/build/tools/unified-content.js +10 -2
  20. package/servers/wp-rest-bridge/build/wordpress.d.ts +0 -3
  21. package/servers/wp-rest-bridge/build/wordpress.js +16 -98
  22. package/servers/wp-rest-bridge/package.json +1 -0
  23. package/skills/wp-analytics/SKILL.md +153 -0
  24. package/skills/wp-analytics/references/signals-feed-schema.md +417 -0
  25. package/skills/wp-content-pipeline/SKILL.md +461 -0
  26. package/skills/wp-content-pipeline/references/content-brief-schema.md +377 -0
  27. package/skills/wp-content-pipeline/references/site-config-schema.md +431 -0
  28. package/skills/wp-editorial-planner/SKILL.md +262 -0
  29. package/skills/wp-editorial-planner/references/editorial-schema.md +268 -0
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "wordpress-manager",
3
- "version": "2.6.0",
4
- "description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP (infrastructure), WP REST API bridge (111 tools incl. WooCommerce + Multisite + Webhooks + Mailchimp + Buffer + SendGrid + Google Search Console), and WordPress.com MCP (hosted sites) with 12 specialized agents, 36 skills, and security hooks. Includes AI content optimization (headline scoring, readability, SEO scoring, content triage), Google Search Console integration (keyword tracking, indexing, SEO feedback), social/email distribution (Mailchimp, Buffer, SendGrid), programmatic SEO, content-commerce attribution, multi-language network, fleet monitoring, content repurposing, webhook propagation, site monitoring, CI/CD pipeline automation, WordPress Multisite network management, WooCommerce store management, local dev environment support, development, testing, security, i18n, accessibility, headless, and operations.",
3
+ "version": "2.13.0",
4
+ "description": "Unified WordPress management plugin for Claude Code. Orchestrates Hostinger MCP, WP REST API bridge (148 tools incl. WooCommerce, Multisite, Mailchimp, Buffer, SendGrid, GSC, GA4, Plausible, CWV, Slack, Workflows, LinkedIn, Twitter, Schema), and WordPress.com MCP with 45 skills, 12 agents, and security hooks. v2.13.0 adds Content Framework: 3-phase pipeline from signals intelligence to editorial calendar to WordPress publishing.",
5
5
  "author": {
6
6
  "name": "vinmor",
7
7
  "email": "morreale.v@gmail.com"
@@ -37,7 +37,12 @@
37
37
  "seo-feedback",
38
38
  "content-optimization",
39
39
  "readability",
40
- "headline-scoring"
40
+ "headline-scoring",
41
+ "content-framework",
42
+ "content-pipeline",
43
+ "editorial-calendar",
44
+ "signals-intelligence",
45
+ "structured-data"
41
46
  ],
42
47
  "mcpServers": "./.mcp.json"
43
48
  }
package/CHANGELOG.md CHANGED
@@ -2,6 +2,61 @@
2
2
 
3
3
  All notable changes to the WordPress Manager plugin for Claude Code.
4
4
 
5
+ ## [2.13.0] — 2026-03-02
6
+
7
+ ### Added — Content Framework (3 Phases)
8
+
9
+ Il Content Framework introduce un'architettura a 3 fasi che collega signal intelligence, content pipeline e editorial calendar. Zero nuovi MCP tool TypeScript — l'intera orchestrazione vive nel CLI via skill + file Markdown strutturati.
10
+
11
+ **Phase 1: Content Pipeline Engine**
12
+ - Nuova skill `wp-content-pipeline` con workflow 5-step: `RECEIVE → PREPARE → PUBLISH → DISTRIBUTE → ARCHIVE`
13
+ - Schema `content-brief.schema.md` — formato di scambio tra Gen* skill e WordPress
14
+ - Schema `site-config.schema.md` — configurazione per-sito (cadenza, canali, defaults)
15
+ - Directory `.content-state/` con pipeline-active/archive per gestione brief
16
+ - Supporto multi-sito (opencactus + altri)
17
+ - Distribuzione automatica su Buffer + Mailchimp dopo pubblicazione
18
+
19
+ **Phase 2: Content Intelligence**
20
+ - Estesa skill `wp-analytics` con Step 7 (signal feed generation)
21
+ - Schema `signals-feed.schema.md` — compatibile con GenSignal NormalizedEvent
22
+ - Delta calculation: confronto metriche con periodo precedente
23
+ - Riconoscimento automatico pattern GenSignal (Search Intent Shift, Early-Adopter Surge, Price-Floor Inversion)
24
+ - Pipeline: analytics → signals-feed.md → insight azionabili
25
+
26
+ **Phase 3: Editorial Calendar**
27
+ - Nuova skill `wp-editorial-planner` con workflow 4-step: `PLAN → BRIEF → SCHEDULE → SYNC`
28
+ - Schema `editorial.schema.md` — calendario mensile con tabelle settimanali (7 colonne)
29
+ - Lifecycle entry: `planned → draft → ready → scheduled → published`
30
+ - Integrazione cross-phase: signals-feed → topic suggestions → calendar → brief → WP post
31
+ - SYNC bidirezionale: status WordPress → aggiornamento calendario
32
+
33
+ **E2E Test su opencactus.com**
34
+ - PLAN: anomalia signals-feed (acqua di cactus +120%) → topic assignment ✅
35
+ - BRIEF: calendar entry → BRF-2026-005.brief.md con contenuto completo ✅
36
+ - SCHEDULE: brief → WP post via AIWU ✅ (con limitazione `post_date` documentata)
37
+ - SYNC: lettura status WP e verifica calendario ✅
38
+ - Cleanup: test posts eliminati ✅
39
+
40
+ **Known Limitation — AIWU MCP**
41
+ - `wp_create_post` / `wp_update_post` non supportano `post_date`
42
+ - `status: future` non funziona via AIWU (auto-publish)
43
+ - Workaround: usare wp-rest-bridge `create_content` che supporta `date`
44
+
45
+ ### Added — Validation Runner v1.2.0
46
+
47
+ - Sistema di validazione automatica per tutti i 148 MCP tool
48
+ - Test CRUD per 26 write tool con sequenze automatiche a 2 tier
49
+ - Modalità interattiva CLI con `@clack/prompts` (selezione sito, tipo validazione, filtro modulo)
50
+ - Flag `--site=X` per selezione sito in batch mode
51
+ - Report: 48 read passed, 26 write passed, 0 failed su opencactus
52
+
53
+ ### Stats
54
+
55
+ - Skills: 43 → **45** (+wp-content-pipeline, +wp-editorial-planner)
56
+ - Reference schemas: +4 (content-brief, site-config, signals-feed, editorial)
57
+ - Architecture doc: `docs/plans/2026-03-02-content-framework-architecture.md`
58
+ - GUIDE.md: +3 sezioni (17.4 Content Pipeline, 17.5 Content Intelligence, 17.6 Editorial Calendar)
59
+
5
60
  ## [2.12.2] — 2026-03-01
6
61
 
7
62
  ### Fixed — Structured Data Tools Rewrite
package/docs/GUIDE.md CHANGED
@@ -130,7 +130,7 @@ wordpress-manager/ # v2.12.2
130
130
  | +-- wp-distribution-manager.md # Multi-channel distribution + LinkedIn + Twitter/X (v2.10.0)
131
131
  +-- commands/ # 5 slash commands
132
132
  | +-- wp-status.md / wp-deploy.md / wp-audit.md / wp-backup.md / wp-setup.md
133
- +-- skills/ # 43 skill totali
133
+ +-- skills/ # 45 skill totali
134
134
  | +-- [OPERATIVE - 5 skill]
135
135
  | +-- wp-deploy/ # Procedure deploy
136
136
  | +-- wp-audit/ # Checklist audit
@@ -2159,6 +2159,130 @@ File: 644 (rw-r--r--)
2159
2159
  wp-config.php: 440 (r--r-----)
2160
2160
  ```
2161
2161
 
2162
+ ### 14.8 Validation Runner — Test Automatizzati dei Tool MCP
2163
+
2164
+ Il **Validation Runner** (`scripts/run-validation.mjs`) verifica il corretto funzionamento di tutti i 148 tool MCP registrati. Supporta due modalita di utilizzo: **interattiva** (menu guidato) e **batch** (flag CLI per automazione/CI).
2165
+
2166
+ #### Modalita Interattiva
2167
+
2168
+ Lanciando lo script senza flag si attiva un menu guidato con `@clack/prompts`:
2169
+
2170
+ ```bash
2171
+ node scripts/run-validation.mjs
2172
+ ```
2173
+
2174
+ Il menu guida attraverso 4 step:
2175
+
2176
+ 1. **Selezione sito target** — lista automatica dai siti in `WP_SITES_CONFIG`
2177
+ 2. **Tipo di validazione** — read tool, write tool per tier, o validazione completa
2178
+ 3. **Filtro modulo** (opzionale) — per testare un singolo modulo (es. `unified-content`)
2179
+ 4. **Conferma** — riepilogo e conferma prima dell'esecuzione
2180
+
2181
+ ```
2182
+ ┌ WP REST Bridge — Validation Runner v1.2.0
2183
+
2184
+ ◆ Seleziona il sito target
2185
+ │ ● opencactus (https://opencactus.com)
2186
+ │ ○ bioinagro (https://www.bioinagro.it)
2187
+
2188
+ ◆ Cosa vuoi validare?
2189
+ │ ○ Solo read tool
2190
+ │ ○ Solo write tool (Tier 1 — CRUD base)
2191
+ │ ○ Solo write tool (Tier 2 — con dipendenze)
2192
+ │ ○ Solo write tool (tutti i tier)
2193
+ │ ○ Tutto (read + write)
2194
+
2195
+ ```
2196
+
2197
+ #### Modalita Batch (CLI)
2198
+
2199
+ Per automazione, CI, o uso da Claude Code si usano i flag:
2200
+
2201
+ ```bash
2202
+ # Selezionare sito specifico
2203
+ node scripts/run-validation.mjs --site=opencactus
2204
+
2205
+ # Test solo read tool
2206
+ node scripts/run-validation.mjs --site=opencactus --module=unified-content
2207
+
2208
+ # Test write CRUD sequences
2209
+ node scripts/run-validation.mjs --site=opencactus --test-writes
2210
+
2211
+ # Solo Tier 1 (content, term, comment, user)
2212
+ node scripts/run-validation.mjs --test-writes --tier=1
2213
+
2214
+ # Solo Tier 2 (media, plugin, assign_terms)
2215
+ node scripts/run-validation.mjs --test-writes --tier=2
2216
+
2217
+ # Regolare il delay tra le chiamate
2218
+ node scripts/run-validation.mjs --delay=200
2219
+ ```
2220
+
2221
+ **Flag disponibili**:
2222
+
2223
+ | Flag | Descrizione |
2224
+ |------|-------------|
2225
+ | `--site=ID` | Seleziona il sito target (switch automatico via MCP) |
2226
+ | `--module=NOME` | Filtra per modulo (es. `unified-content`, `gsc`, `wc-products`) |
2227
+ | `--test-writes` | Esegue sequenze CRUD: create > verify > update > verify > delete |
2228
+ | `--tier=N` | Filtra le write sequences per tier (1, 2, o 3) |
2229
+ | `--include-writes` | Include write tool nel test read (senza sequenze CRUD) |
2230
+ | `--delay=MS` | Millisecondi di attesa tra le chiamate (default: 100) |
2231
+ | `--timeout=MS` | Timeout per singola chiamata (default: 10000) |
2232
+
2233
+ **Regola duale**: senza flag → interattivo. Con almeno un flag → batch mode.
2234
+
2235
+ #### Write Test Tiers
2236
+
2237
+ | Tier | Sequenze | Descrizione |
2238
+ |------|----------|-------------|
2239
+ | **1** | content, term, comment, user | CRUD base, entita standalone |
2240
+ | **2** | media, plugin, assign_terms | CRUD con dipendenze tra entita |
2241
+ | **3** | switch_site | Operazioni speciali (cambio sito e ritorno) |
2242
+
2243
+ Ogni sequenza esegue il ciclo completo **create → verify → update → verify → delete** con cleanup automatico in caso di errore.
2244
+
2245
+ #### Output: Tre Livelli di Dettaglio
2246
+
2247
+ I risultati vengono generati in tre formati complementari:
2248
+
2249
+ 1. **Console (stderr)** — log in tempo reale durante l'esecuzione, ideale per monitorare il progresso:
2250
+ ```
2251
+ [validation] Write sequences to run: content(T1), term(T1), user(T1)
2252
+ [validation] ── Sequence: content (Tier 1) ──
2253
+ [validation] → extracted id=2451
2254
+ [validation] [+] create:create_content (488ms)
2255
+ [validation] [+] verify:get_content (341ms)
2256
+ ```
2257
+
2258
+ 2. **Markdown** (`docs/VALIDATION.md`) — report tabellare per consultazione rapida, con status per ogni tool, servizio e modulo.
2259
+
2260
+ 3. **Dashboard HTML** (`docs/validation/dashboard.html`) — interfaccia grafica interattiva con:
2261
+ - Grafici riassuntivi (passed/failed/skipped)
2262
+ - Dettaglio per modulo e servizio
2263
+ - Tempo di risposta per ogni tool
2264
+ - Filtri e ricerca
2265
+
2266
+ > **Importante**: La dashboard carica `results.json` via `fetch()`, quindi richiede un server HTTP. Non funziona con il protocollo `file://`.
2267
+
2268
+ ```bash
2269
+ # Avviare un server locale per la dashboard
2270
+ cd docs/validation && python3 -m http.server 8111
2271
+
2272
+ # Poi aprire nel browser
2273
+ # http://localhost:8111/dashboard.html
2274
+ ```
2275
+
2276
+ #### File Generati
2277
+
2278
+ | File | Formato | Descrizione |
2279
+ |------|---------|-------------|
2280
+ | `docs/validation/results.json` | JSON | Dati strutturati, merge incrementale tra run |
2281
+ | `docs/VALIDATION.md` | Markdown | Report leggibile, rigenerato ad ogni run |
2282
+ | `docs/validation/dashboard.html` | HTML | Dashboard interattiva (richiede HTTP server) |
2283
+
2284
+ I risultati sono **incrementali**: un run su un singolo modulo (`--module=X`) aggiorna solo quel modulo in `results.json`, preservando i risultati precedenti degli altri.
2285
+
2162
2286
  ---
2163
2287
 
2164
2288
  ## 15. Troubleshooting
@@ -2363,6 +2487,121 @@ bash ~/.claude/plugins/local/wordpress-manager/scripts/validate-wp-operation.sh
2363
2487
 
2364
2488
  ---
2365
2489
 
2490
+ ## 17. Content Framework
2491
+
2492
+ The Content Framework connects Gen* ecosystem skills (GenCorpComm, GenMarketing, GenSignal) to WordPress publishing through structured Markdown files.
2493
+
2494
+ ### 17.1 Architecture
2495
+
2496
+ The framework uses three types of MD files as configuration layer:
2497
+
2498
+ | Type | Suffix | Purpose | Location |
2499
+ |------|--------|---------|----------|
2500
+ | Schema | `.schema.md` | Template definition | `skills/wp-content-pipeline/references/` |
2501
+ | Config | `.config.md` | Site-specific settings | `.content-state/{site_id}.config.md` |
2502
+ | Brief | `.brief.md` | Content instance | `.content-state/pipeline-active/` |
2503
+
2504
+ ### 17.2 Content Pipeline (Phase 1)
2505
+
2506
+ **Skill**: `wp-content-pipeline`
2507
+
2508
+ The pipeline orchestrates: `SCAN → CONFIG → VALIDATE → PUBLISH → DISTRIBUTE → UPDATE → ARCHIVE`
2509
+
2510
+ **Creating a brief**:
2511
+ 1. Generate content (via GenCorpComm or manually)
2512
+ 2. Save as `.content-state/pipeline-active/BRF-YYYY-NNN.brief.md`
2513
+ 3. Set frontmatter: site_id, title, categories, channels, SEO params
2514
+ 4. Set `status: ready` when content is finalized
2515
+
2516
+ **Publishing a brief**:
2517
+ 1. Invoke `wp-content-pipeline` skill
2518
+ 2. Pipeline reads all `status: ready` briefs
2519
+ 3. Validates quality gates
2520
+ 4. Creates WP post → distributes to channels → archives brief
2521
+
2522
+ **Site configuration**:
2523
+ - One `.content-state/{site_id}.config.md` per managed site
2524
+ - Defines brand voice, default categories, active channels, SEO settings
2525
+ - Brief values override config defaults
2526
+
2527
+ ### 17.3 Directory Structure
2528
+
2529
+ ```
2530
+ .content-state/
2531
+ ├── {site_id}.config.md # site configuration
2532
+ ├── pipeline-active/ # briefs in progress
2533
+ │ └── BRF-YYYY-NNN.brief.md
2534
+ └── pipeline-archive/ # completed briefs
2535
+ └── BRF-YYYY-NNN.brief.md
2536
+ ```
2537
+
2538
+ ### 17.4 Integration with Gen* Skills
2539
+
2540
+ | Gen* Skill | Produces | Pipeline Consumes |
2541
+ |------------|----------|-------------------|
2542
+ | GenCorpComm | Multi-format content | Body + metadata → brief.md |
2543
+ | GenMarketing | Content calendar | Topics + dates → brief.md |
2544
+ | GenBrand | Brand voice | Tone + style → config.md |
2545
+ | GenSignal | Market signals | Topics → editorial planning (Phase 2) |
2546
+
2547
+ ### 17.5 Content Intelligence (Phase 2)
2548
+
2549
+ **Skill**: `wp-analytics` (extended with Step 7: Signal Feed Generation)
2550
+
2551
+ The intelligence layer creates a feedback loop: analytics data → structured signals → actionable insights.
2552
+
2553
+ **Generating a signals feed**:
2554
+ 1. Run `wp-analytics` signal feed generation for a site
2555
+ 2. Step 7 collects data from GA4, GSC, Plausible, CWV tools
2556
+ 3. Calculates delta % vs previous period
2557
+ 4. Maps metrics to GenSignal NormalizedEvent format
2558
+ 5. Identifies anomalies (±30% threshold by default)
2559
+ 6. Matches 3 GenSignal patterns automatically
2560
+ 7. Writes `.content-state/signals-feed.md`
2561
+
2562
+ **Detectable patterns**:
2563
+
2564
+ | Pattern | Detection Source | Trigger |
2565
+ |---------|-----------------|---------|
2566
+ | Search Intent Shift | GSC queries | CTR ≥ +20% with stable position |
2567
+ | Early-Adopter Surge | GA4 traffic sources | Single source ≥ +50% vs site < +20% |
2568
+ | Hype→Utility Crossover | GA4 page metrics | Engagement ≥ +15% with bounce ≤ -10% |
2569
+
2570
+ **Acting on signals**:
2571
+ - "Approfondisci con GenSignal" → Full SignalCard with scoring and next_actions
2572
+ - "Crea brief dai segnali" → Auto-generate content briefs in pipeline-active/
2573
+ - Signals feed topic suggestions → Editorial calendar (Phase 3)
2574
+
2575
+ **Signal feed file**: `.content-state/signals-feed.md` (overwritten each generation)
2576
+
2577
+ ### 17.6 Editorial Calendar (Phase 3)
2578
+
2579
+ **Skill**: `wp-editorial-planner`
2580
+
2581
+ The editorial planner manages monthly content calendars as `.state.md` files, bridging strategic planning to tactical execution.
2582
+
2583
+ **Workflow**: `PLAN → BRIEF → SCHEDULE → SYNC`
2584
+
2585
+ | Step | Action | Input | Output |
2586
+ |------|--------|-------|--------|
2587
+ | PLAN | Create monthly calendar | site config + signals feed | `{YYYY-MM}-editorial.state.md` |
2588
+ | BRIEF | Convert entries to briefs | calendar entries | `pipeline-active/BRF-*.brief.md` |
2589
+ | SCHEDULE | Create WP future posts | ready briefs | WordPress posts with `status: future` |
2590
+ | SYNC | Update calendar from WP | WordPress post status | Updated calendar entries |
2591
+
2592
+ **Calendar structure**:
2593
+ - One `.content-state/{YYYY-MM}-editorial.state.md` per month
2594
+ - YAML frontmatter: monthly goals, posts target, focus topics, SEO targets
2595
+ - Markdown tables: one per week with columns Data, Titolo, Tipo, Status, Brief ID, Post ID, Canali
2596
+
2597
+ **Entry lifecycle**: `planned → draft → ready → scheduled → published`
2598
+
2599
+ **Cross-phase integration**:
2600
+ - Phase 2 signals → topic suggestions for `[da assegnare]` entries
2601
+ - Calendar entries → Phase 1 briefs → WordPress publishing pipeline
2602
+
2603
+ ---
2604
+
2366
2605
  *Guida v2.12.2 — WordPress Manager Plugin per Claude Code*
2367
2606
  *Ultimo aggiornamento: 2026-03-01*
2368
2607
  *WCOP Score: 8.8/10 (Tier 4+5 complete)*