tiered-processing-pipeline

Processes raw CSV and JSON exports through staged CLI and Python ETL pipelines with validation gates.

13|2|Updated Feb 10, 2026
One-click install
npx skills add https://github.com/aaddrick/written-voice-replication --skill tiered-processing-pipeline-aaddrick
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tiered-processing-pipeline
Source: https://github.com/aaddrick/written-voice-replication/tree/main/.claude/skills/tiered-processing-pipeline
Command: npx skills add https://github.com/aaddrick/written-voice-replication --skill tiered-processing-pipeline-aaddrick

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Raw data exports are messy: mixed encodings, duplicates, inconsistent timestamps, and malformed records. This Skill provides a repeatable three-stage pipeline that cleans data with CLI tools, enriches it with Python NLP, and integrates LLM scoring, with validation gates that prevent silent data loss between stages. ## Core Features & Use Cases - Staged ETL Architecture: Stage 1 uses CLI tools (csvkit, jq, minet, qsv) for cleaning and validation; Stage 2 uses Python (pandas, spaCy, NLTK, scikit-learn) for NLP enrichment; Stage 3 integrates LLM scoring and composite metrics. - Validation Gates and Manifests: Every stage reconciles row counts, quarantines failed records instead of dropping them, and writes JSON manifests as an audit trail. - Graceful Degradation: Handles small corpora, sparse metadata, mixed encodings, and LLM API failures with explicit fallback behavior and coverage reporting. - Use Case: You receive a 50,000-row Reddit data export as JSON. The pipeline deduplicates and normalizes it with jq and qsv, runs spaCy NER and VADER sentiment in batches, then applies LLM relevance scoring with checkpointing, producing an analysis-ready dataset and a pipeline report. ## Quick Start Use the tiered-processing-pipeline skill to process my raw data export in exports/ into a clean, enriched dataset with a pipeline report.

Frequently Asked Questions about tiered-processing-pipeline

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

FAQPage Schema
How do I build a multi-stage ETL pipeline for CSV and JSON data?

Split the work into three stages: CLI tools (csvkit, jq, qsv) handle cleaning and validation, Python (pandas, spaCy) handles enrichment, and a final stage integrates LLM scoring. Each stage reads from the previous stage's output directory and writes a manifest for auditing.

What CLI tools should I use for cleaning large CSV files?

Use qsv for high-performance operations like deduplication and statistics on large files, csvkit for validation and column selection, and uchardet with iconv for encoding detection and conversion. jq handles JSON filtering and flattening.

How do I prevent silent data loss between pipeline stages?

Reconcile row counts at every validation gate: input rows must equal output rows plus quarantined rows. Write a JSON manifest per stage recording counts, schemas, and quarantine reasons, and never modify raw data in place.

Why is my spaCy processing slow on large datasets?

Processing documents one at a time is orders of magnitude slower than batching. Use nlp.pipe(texts, batch_size=50) instead of calling nlp() per document, which typically yields a 10-50x speedup.

When should I skip topic modeling on a text corpus?

Skip NMF topic modeling when the corpus has fewer than about 50-100 documents, since the algorithm lacks statistical mass and produces incoherent topics. Focus on per-record NLP features like NER and sentiment instead.

What happens if the LLM API fails mid-pipeline?

The pipeline checkpoints after each batch with exponential backoff and retry logic, so interrupted runs can resume. If the API is unavailable entirely, stages 1 and 2 still complete and stage 3 is flagged as incomplete in a partial report.