Skip to content
Content
Skill

/cf-publish

Execute CMS publishing: push a finished, reviewed piece (Phase 8 complete, quality score >=7.0) to Webflow or WordPress via MCP connectors as draft, scheduled, or live — always showing a full publish preview and waiting for your explicit yes/no/edit confirmation before anything

From plugin
contentforge
2822 skills13 agents9 commands
Install
$ npx -y skills add indranilbanerjee/contentforge --skill cf-publish --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/cf-publish

Context preview

The summary Claude sees to decide when to auto-load this skill.

Execute CMS publishing: push a finished, reviewed piece (Phase 8 complete, quality score >=7.0) to Webflow or WordPress via MCP connectors as draft, scheduled, or live — always showing a full publish preview and waiting for your explicit yes/no/edit confirmation before anything

SKILL.md

cf-publish.SKILL.md
name: cf-publish
description: "Execute CMS publishing: push a finished, reviewed piece (Phase 8 complete, quality score >=7.0) to Webflow or WordPress via MCP connectors as draft, scheduled, or live — always showing a full publish preview and waiting for your explicit yes/no/edit confirmation before anything is pushed. Runs the EU AI Act Article 50 disclosure check, verifies the live URL, meta tags, and images post-publish, and falls back to a standalone HTML export when no CMS connector is configured. Triggers on \"/contentforge:cf-publish\", \"publish this article to WordPress\", \"push this to Webflow\", \"schedule this post for next week\", \"export the article as HTML\". Refuses unreviewed content; pairs with /contentforge:cf-social-adapt for post-publish promotion."
disable-model-invocation: true
argument-hint: "[platform]"
effort: low

Publish Content — ContentForge CMS Publishing

Push publication-ready content from the ContentForge pipeline directly to your CMS (Webflow or WordPress) via MCP connectors. Preview before publishing, verify post-publish, and fall back to HTML export when no connector is available.

When to Use

Use `/contentforge:cf-publish` when:

  • You have a **finished, reviewed content piece** (Phase 8 complete, score >=7.0)
  • You want to **publish directly** to Webflow or WordPress without copy-pasting
  • You need to **schedule content** for a future publish date
  • You want **post-publish verification** (URL live, meta tags correct, images loaded)
  • You want an **HTML export** for manual upload when no CMS connector is configured

**Do NOT use for:**

  • Content still in pipeline (must be Phase 8 complete)
  • Content that did not reach APPROVED (anything below 7.0 — a 5.0-6.9 piece is `review_required`, not publishable)
  • Platforms other than Webflow/WordPress (use `/contentforge:cf-social-adapt` for social media)

What This Command Does

1. **Verify Connector** -- Check if Webflow or WordPress MCP connector is active 2. **Load Content** -- Pull finished content from Google Drive or local output 3. **Format for Platform** -- Convert markdown/docx to platform-specific HTML/blocks 4. **Preview** -- Show rendered preview with meta tags, slug, featured image 5. **AI Disclosure & Provenance** -- EU AI Act Article 50 check (applicable from 2 Aug 2026) 6. **Publish/Schedule** -- Push to CMS as draft, published, or scheduled 7. **Post-Publish Verification** -- Confirm URL is live, meta tags are correct, content renders properly 8. **Fallback** -- If no connector, generate standalone HTML file for manual upload

Required Inputs

**Minimum Required:**

  • **Content Source** -- Google Drive URL, local file path, or requirement ID (e.g., `REQ-001`)
  • **Platform** -- `webflow` or `wordpress`
  • **Status** -- `draft`, `publish`, or `schedule`

**Optional:**

  • **Schedule Date** -- ISO date/time for scheduled publishing (required if status=schedule)
  • **Collection/Category** -- Webflow collection slug or WordPress category
  • **Featured Image** -- URL or local path to hero image
  • **Author** -- Override the byline author (default: the author applied in Phase 3 from the brand's `author_profiles`; falls back to authorless if none configured)
  • **Tags** -- Comma-separated list of tags
  • **Slug Override** -- Custom URL slug (defaults to SEO-optimized slug from Phase 6)

How to Use

Interactive Mode

/contentforge:cf-publish

**Prompts you for:** 1. Content source (Drive URL, file path, or requirement ID) 2. Platform (Webflow / WordPress) 3. Publish status (draft / publish / schedule) 4. Preview confirmation before pushing

Quick Mode

/contentforge:cf-publish REQ-001 --platform=webflow --status=publish

Schedule for Later

/contentforge:cf-publish REQ-001 --platform=wordpress --status=schedule --date="2026-09-01T09:00:00"

Publish from Google Drive

/contentforge:cf-publish https://drive.google.com/file/d/ABC123 --platform=webflow --status=draft

What Happens

Step 1: Connector Verification (5-10 seconds)

Before attempting any CMS operation, verify the target connector is available.

**Check MCP connector status:**

Platform: webflow
Connector: Webflow MCP (https://mcp.webflow.com/sse)
Status: CHECKING...

**Case A: Connector Active**

Webflow MCP: CONNECTED
Site: acme-corp.webflow.io
Collections available: blog-posts, case-studies, resources
Proceeding with direct publish...

**Case B: Connector Not Found**

Webflow MCP: NOT CONNECTED

No Webflow connector detected in .mcp.json.
Falling back to HTML export mode.

To enable direct publishing, add the Webflow connector:
  /contentforge:cf-connect webflow

Generating standalone HTML file for manual upload...

Step 2: Load and Validate Content (10-15 seconds)

**Load content from source:**

  • Read .docx or markdown from Google Drive or local output directory
  • Extract metadata: title, meta description, slug, keywords, author, featured image
  • Validate quality score >= 7.0 (refuse to publish unreviewed content)

**Validation checks:**

Content Validation
---------------------------------------------------
Title: "AI in Healthcare: 2026 Trends"        OK
Quality Score: 9.2/10                          OK
Status: Approved (Phase 8 Complete)            OK
Word Count: 1,947                              OK
Meta Title: 58 chars                           OK
Meta Description: 152 chars                    OK
SEO Slug: ai-in-healthcare-2026-trends         OK
Featured Image: hero-ai-healthcare.jpg         OK
---------------------------------------------------
All checks passed. Ready to format for Webflow.

**Rejection cases:**

  • Quality score < 7.0: "Content has not passed quality review. Score: 4.8/10. Run the full pipeline first."
  • No Phase 8 completion: "Content pipeline incomplete. Phase 8 (Output Manager) has not run."
  • Missing meta tags: "Meta title and description are required. Run Phase 6 (SEO Optimizer) first."

Step 3: Format for Target

Read more
Ships withcontentforge

🌐 Read this in: English · हिन्दी · 中文 · 日本語 · 한국어 · Español · Português · العربية · اردو · தமிழ் · বাংলা · Русский You need to ship 30 articles this quarter that sound human, cite real sources, link into your funnel, and survive an editor who checks.

Get the whole plugin

Other skills on contentforge.