Skip to content
Content
Skill

/batch-process

Produce multiple content pieces as a sequential, checkpointed queue — each piece runs the full 10-phase ContentForge pipeline with all 10 quality gates, sorted by priority and resumable after interruption. Intake from local JSON, Google Sheets, Airtable, or CSV; outputs

From plugin
contentforge
2822 skills13 agents9 commands
Install
$ npx -y skills add indranilbanerjee/contentforge --skill batch-process --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/batch-process

Context preview

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

Produce multiple content pieces as a sequential, checkpointed queue — each piece runs the full 10-phase ContentForge pipeline with all 10 quality gates, sorted by priority and resumable after interruption. Intake from local JSON, Google Sheets, Airtable, or CSV; outputs

SKILL.md

batch-process.SKILL.md
name: batch-process
description: "Produce multiple content pieces as a sequential, checkpointed queue — each piece runs the full 10-phase ContentForge pipeline with all 10 quality gates, sorted by priority and resumable after interruption. Intake from local JSON, Google Sheets, Airtable, or CSV; outputs per-piece .docx files plus a batch summary report. Triggers on \"/contentforge:batch-process\", \"produce these 15 blog posts\", \"run the whole content queue\", \"batch content production\", \"process my content spreadsheet\". Requires an existing brand profile per brand (create via /contentforge:brand-setup) and a pre-set title per piece — batch runs are non-interactive. Dispatches the batch-orchestrator agent; produces files, does not publish them."
argument-hint: "[sheet-url or topic-list]"
effort: max

Batch Content Processing

Process multiple content requirements through the ContentForge pipeline as a **sequential, checkpointed queue** with priority-based scheduling and event-driven progress tracking. Each piece runs the full 10-phase pipeline (plus Step 0.5) with all 10 quality gates — batch mode changes the intake, not the standards.

When to Use

Use `/contentforge:batch-process` when:

  • You have 2+ content pieces to produce
  • You want hands-off production of a whole queue (each piece needs a pre-set title — batch runs are non-interactive)
  • You need priority scheduling (urgent pieces first)
  • You want per-piece progress visibility and resumability
  • You're running agency-scale production (10-50+ pieces)

What This Command Does

1. **Intake Multiple Requirements** — Read from the brand's tracking backend: local JSON (default), Google Sheets, Airtable, or a CSV file 2. **Build Execution Queue** — Validate rows and sort by priority 3. **Sequential Orchestration** — Run one full ContentForge pipeline per piece, in queue order; every phase of every piece is checkpointed, so an interrupted batch resumes where it stopped 4. **Progress Tracking** — Status table redrawn after each piece/phase event (piece started, gate passed, piece finished) 5. **Error Handling** — Automatic retry for transient failures (resuming from checkpoints), human escalation for persistent issues 6. **Completion Report** — Summary of all pieces: APPROVED, review_required, failed, with quality scores and output locations

Required Inputs

**Tracking backend** (per brand, via `tracking.backend` in the brand profile — `local` is the default):

  • **Local JSON** — requirements managed by `scripts/local-tracker.py`
  • **Google Sheets** — sheet with columns: `Requirement ID`, `Content Type`, `Title`, `Target Audience`, `Brand`, `Word Count Target`, `Priority` (1-5), `Status`
  • **Airtable** — base with the same fields

**CSV** (alternative intake):

requirement_id,content_type,title,target_audience,brand,word_count,priority,status
REQ-001,article,AI in Healthcare,Healthcare CIOs,acmemed,2000,1,pending
REQ-002,blog,10 Tips for Remote Teams,HR Managers,techcorp,1500,3,pending

**Note:** the `title` column doubles as the `--title` bypass — batch pieces skip interactive title curation and use it verbatim.

How to Use

Basic Usage

/contentforge:batch-process

**Prompt:** "Where are your content requirements? (local queue / Google Sheet URL / Airtable / CSV)"

With Direct Sheet URL

/contentforge:batch-process https://docs.google.com/spreadsheets/d/ABC123/edit

With CSV Upload

/contentforge:batch-process batch-requirements.csv

What Happens

Step 1: Queue Building

  • Load all requirements from source
  • Validate each row (required fields, brand exists, content type supported, word count within the type's canonical range)
  • Sort by priority (1=highest, 5=lowest)
  • Display queue summary: total pieces, priority mix, execution order

Step 2: Sequential Execution

**Dispatch the agent — do not drive the queue inline.** Call `Task` with `subagent_type: contentforge:batch-orchestrator`, passing the validated queue path, the backend, and the resume state. `agents/09-batch-orchestrator.md` owns queue traversal, per-piece checkpointing, retry policy and escalation; this skill owns source loading, row validation and the progress table.

  • Run one ContentForge pipeline per piece, front-to-back
  • Each pipeline runs the full protocol from `skills/contentforge/SKILL.md` — Step 0 init, title bypass, phases 1–8 with orchestrator-verified gates, per-phase checkpoints
  • When one piece finishes (or is escalated), the next starts automatically

Step 3: Progress Table (event-driven)

Redrawn after each piece/phase event — not on a timer:

CONTENTFORGE BATCH — 2/5 complete | 1 review_required | 0 failed
─────────────────────────────────────────────────────────────
▶ REQ-003 | SEO Whitepaper       | Phase 4 (Validation)
✓ REQ-001 | AI in Healthcare     | APPROVED 8.4
✓ REQ-004 | FAQ Product Launch   | APPROVED 7.6
⚠ REQ-002 | Remote Teams Blog    | review_required (6.1)
· REQ-005 | Case Study Acme      | queued

Step 4: Completion Report

  • Total pieces processed
  • APPROVED count (reviewer composite ≥7.0, industry-adjusted, all dimension minimums met)
  • review_required count (5.0-6.9 after loop limits, or <5.0)
  • Failed count
  • Output locations: `~/Documents/ContentForge/{Brand}/` (+ Drive folder if configured)

Priority Scheduling

**Priority Levels:**

  • **1 (Urgent)**: Processed first, deadline-driven (e.g., press release for tomorrow)
  • **2 (High)**: Campaign-critical content
  • **3 (Normal)**: Standard blog posts, articles
  • **4 (Low)**: Evergreen content, no deadline
  • **5 (Backlog)**: Nice-to-have, filler content

Execution Model

  • **Sequential, one piece at a time** — no concurrent pipelines. Shared per-brand state, API rate limits, and context limits make in-session parallelism unsafe; resilience comes from per-phase checkpointing instead.
  • Each piece is fully independent (own checkpoint run directory, own quality gates)
  • If a piece's pipeline fails
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.