batch-process
Batch-produce many content pieces as one resumable queue, highest priority first. \"write these 15 posts\"
Show content analytics: quality-score trends, slowest pipeline phase and alerts over 7-90 days. \"how is production going\"
Claude Code
$ npx -y skills add indranilbanerjee/contentforge --skill cf-analytics --agent claude-code
Codex
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a codex -y
Cursor
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a cursor -y
Gemini CLI
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a gemini-cli -y
GitHub Copilot
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a github-copilot -y
OpenCode
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a opencode -y
Windsurf
$ npx skills add indranilbanerjee/contentforge --skill cf-analytics -a windsurf -y
name: cf-analytics description: "Show content analytics: quality-score trends, slowest pipeline phase and alerts over 7-90 days. \"how is production going\"" effort: low argument-hint: "[--period 7|30|90] [--brand <name>] [--type <content-type>] [--focus quality|timing|compliance|citations]"
> **Script location.** If your host does not set `${CLAUDE_PLUGIN_ROOT}`, the scripts are in this plugin's `scripts/` folder, next to `skills/`. Run them with Python 3.10 or newer: `python`, or `python3` where `python` is not found (macOS, many Linux systems).
Track ContentForge production quality, pipeline timing, brand-specific patterns, and compliance trends over configurable time periods with automated insights and alert flags.
Use `/contentforge:cf-analytics` when you need:
**For real-time batch monitoring**, use the Progress Tracker (built into `/contentforge:batch-process`). **For individual content production**, use [`/contentforge:create-content`](../../commands/create-content.md).
Loads historical production data from the brand's configured tracking backend (Google Sheets, Airtable, or local — see `tracking.backend` in the brand profile), calculates aggregate metrics across configurable dimensions, identifies statistical outliers and concerning trends, generates an ASCII dashboard with actionable recommendations, and flags alerts when performance degrades.
**Process Flow:**
1. **Load Data** — Read tracking records from the brand's tracking backend (Google Sheets / Airtable / local JSON) 2. **Filter & Parse** — Apply time period, brand, content type, and metric focus filters 3. **Calculate Aggregates** — Average scores, trends, percentiles, phase timing breakdowns 4. **Detect Outliers** — Flag data points beyond 2.0 standard deviations from mean 5. **Generate Insights** — Identify patterns, correlations, and improvement opportunities 6. **Present Dashboard** — Render ASCII analytics display with charts and recommendations 7. **Alert Check** — Evaluate alert rules and surface any triggered flags
**Optional (all have defaults):**
/contentforge:cf-analytics
/contentforge:cf-analytics --period=90
/contentforge:cf-analytics --brand=AcmeMed --period=30
/contentforge:cf-analytics --type=whitepaper --period=90
/contentforge:cf-analytics --focus=timing --period=30
/contentforge:cf-analytics --brand=AcmeMed --type=article --focus=quality --period=90
ContentForge's Output Manager (Phase 8) logs every completed piece to the backend configured in the brand profile (`tracking.backend`):
All three backends share the same record schema:
| Column | Type | Description | |--------|------|-------------| | requirement_id | string | Unique content ID (REQ-001) | | title | string | Content title | | brand | string | Brand profile used | | content_type | enum | article, blog, whitepaper, faq, research_paper, video_script, case_study, newsletter | | word_count | integer | Final word count | | quality_score | float | Composite score (0-10) | | content_quality | float | Dimension score (0-10) | | citation_integrity | float | Dimension score (0-10) | | brand_compliance | float | Dimension score (0-10) | | seo_performance | float | Dimension score (0-10) | | readability | float | Dimension score (0-10) | | processing_time_min | float | Total pipeline time in minutes | | phase_1_time | float | Research phase duration | | phase_2_time | float | Fact-check phase duration | | phase_3_time | float | Drafting phase duration | | phase_4_time | float | Validation phase duration | | phase_5_time | float | Structuring phase duration | | phase_6_time | float | SEO phase duration | | phase_6_5_time | float | Humanizer phase duration | | phase_7_time | float | Reviewer phase duration | | phase_8_time | float | Output phase duration | | loops_used | integer | Total feedback loops triggered | | loop_details | string | Which loops fired (e.g., "P4>P3 x1, P7>P5 x1") | | citations_count | integer | Number of citations in final output | | broken_links | integer | Broken links detected (should be 0) | | completed_at | datetime | Completion timestamp | | output_url | string | Google Drive link to .docx |
The `local` backend is the default: tracking data lives at
~/.claude-marketing/{brand-slug}/tracking/tracking.jsonSwitch backends anytime with `/contentforge:cf-switch-backend` (migration is additive and idempotent).
🌐 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.
Batch-produce many content pieces as one resumable queue, highest priority first. \"write these 15 posts\"
Add a custom MCP connector for any external API or service. \"hook up our internal CMS\"
Re-check a published piece's AEO: cited in AI Overviews and AI answers, tracked over time. \"did AI cite our article\"
Audit a content library for stale posts and topic gaps; ranks what to refresh or retire. \"which posts need refreshing\"
Write a research-backed content brief from a keyword or topic: intent, competitors, outline. \"brief me on this topic\"
Build a 30/60/90-day content calendar with production windows, owners and conflicts. \"plan next quarter's content\"
Activates when the user asks about AI prompts, needs prompt templates, wants to search for prompts, or mentions prompts.chat. Use…
AI-driven presentation workflow for generating editable PPTX decks and slides, reconstructing page visuals, creating reusable…
Use this skill when the user wants a .pptx with smooth cross-slide animation — PowerPoint Morph transitions, Keynote-style…
Create stunning, animation-rich HTML presentations from scratch or by converting PowerPoint files. Use when the user wants to…