cf-switch-backend

Switch ContentForge tracking and delivery backend between Google Sheets, Airtable, and local filesystem.

1|Updated Aug 18, 2026
One-click install
npx skills add https://github.com/teachskillofskills-ai/ContentForge-techshu --skill cf-switch-backend-teachskillofskills-ai
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: cf-switch-backend
Source: https://github.com/teachskillofskills-ai/ContentForge-techshu/tree/main/skills/cf-switch-backend
Command: npx skills add https://github.com/teachskillofskills-ai/ContentForge-techshu --skill cf-switch-backend-teachskillofskills-ai

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Content teams need their tracking records and output files stored where collaboration actually happens, but moving between Google Sheets + Drive, Airtable, and local storage normally means manual credential setup, data re-entry, and risk of losing history. This Skill switches the active backend, verifies access, and optionally migrates existing records without deleting source data. ## Core Features & Use Cases - Backend Switching: Change the tracking.backend value in the brand profile between local, airtable, and google_sheets, taking effect immediately for the next content run. - Guided Credential Setup: Walks through Airtable personal access token creation or Google service account configuration, then verifies access by running the corresponding tracker script. - Additive Migration: Copies existing tracking records and output files to the new backend via backend-migrator.py, with idempotent dedup keyed on requirement_id and resumable re-runs. - Status Checks: The --status flag reports current backend health, record counts, and file locations. - Use Case: A team outgrows single-user local tracking and runs /contentforge:cf-switch-backend airtable to move 47 tracking records and 42 output files into a shared Airtable base while preserving the original local JSON. ## Quick Start Ask the assistant to switch the ContentForge tracking backend to Airtable and migrate existing records, or run it with --status to check which backend is currently active.

Frequently Asked Questions about cf-switch-backend

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I switch ContentForge tracking from local storage to Airtable?

Run /contentforge:cf-switch-backend airtable. The Skill checks for an AIRTABLE_TOKEN environment variable, guides token creation with data.records:read and data.records:write scopes, verifies access via airtable-tracker.py, and optionally migrates existing records.

How do I check which tracking backend ContentForge is currently using?

Run /contentforge:cf-switch-backend --status. This executes backend-migrator.py with the status action and reports the active backend from the brand profile's tracking.backend field along with record counts and file locations.

Does migrating tracking data to a new backend delete the original records?

No, migration is additive and never deletes source data. Original records remain in the local tracking.json or source backend, and migration is idempotent for records carrying a requirement_id, so re-runs skip already-migrated entries.

What credentials are needed for the Google Sheets and Drive backend?

You need a Google Cloud service account JSON key saved to ~/.claude-marketing/google-credentials.json, with the Sheets API and Drive API enabled. The target Sheet and Drive folder must be shared with the service account email as Editor.

What are the limitations when migrating from Google Sheets to another backend?

Migrating from google_sheets moves tracking records only; downloading the linked Drive files is not implemented, so rows arrive without attachments. The source Drive copies remain untouched, and records without a requirement_id are re-written on every run.