Data fetcher pipeline
Executes an automated data retrieval pipeline connecting to Kaggle, OpenML, SEC EDGAR, and FRED to extract raw datasets for machine learning and data engineering workloads. Use when a user needs to fetch, download, or search for raw datasets, market data, or macro-economic statistics.From its SKILL.md
npx -y skills add zyadmad56-spec/data-fetcher-pipelineAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
3 things to look at
- reads credentialsReads from 2 credential sources: `~/.config/data-fetcher-pipeline/config.json` and 1 more.
- 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
- runs commandsInstructs the agent to run 2 commands, including `pip install .` and 1 more.
SKILL.md
4.5 KB, 826 tokens by cl100k_base, as published. Nobody here has run it
Data Fetcher Pipeline
A highly modular data-fetching pipeline tailored for coding agents. It ensures rate-limit compliance, raw data integrity, and strict environment configuration across multiple backend architectures.
Quick start
Execute the pipeline via natural language mapping to the target data endpoint.
Example Invocations:
- "Use the data-fetcher-pipeline to get the latest COVID-19 dataset from WHO."
- "Use the data-fetcher-pipeline to download the SEC EDGAR 10-K filings for AAPL."
- "Fetch the housing prices dataset from Kaggle using the data-fetcher-pipeline."
Workflows
1. Hybrid Installation and Deployment
The pipeline supports dual deployment vectors to maximize OS compatibility and user preference.
- Global CLI (Recommended): Deploy the package globally (
pip install .) to expose thedata-fetcherexecutable natively to the system path. - Interactive Bash: Invoke
./scripts/run_pipeline.shdirectly to utilize the guided shell wizard.
2. Configuration Management (Lazy-Loaded State)
The system enforces strict OS-standard credential management to resolve SAST vulnerabilities. Configurations are managed dynamically via an isolated JSON dictionary (~/.config/data-fetcher-pipeline/config.json).
If executing within a legacy or automated container environment, manually map credentials or use the provided config_template.json.
3. Engine Execution and Zero-Imputation Purity
The strategy-pattern Python engine parses arguments (--source, --query) and handles polymorphic instantiation of API extraction handlers. The payload is extracted precisely as served by the upstream source, preserving exact dimensions without unapproved imputation.
4. Post-Processing ETL (Format Alchemy)
After raw data extraction, the pipeline seamlessly integrates with an optional ETL module (format_alchemy.py). This engine chunks massive CSV payloads directly into memory-safe SQLite databases (.db) and exports capped Excel workbooks natively, preventing out-of-memory errors.
Advanced features
Automated Metadata Generation
Upon successful data retrieval, the engine generates a robust dataset_description.txt metadata dictionary profiling schema structure and null densities.
Zero-Args Interactive Wizard Executing the engine without specific arguments triggers an interactive CLI wizard, implementing a full state-machine fallback to guide parameter collection before returning to the core execution loop.
Supported Data Sources
| Source | Description | Typical use case |
|---|---|---|
| OpenML | An inclusive, open-source machine learning platform for dynamically searching and retrieving rich datasets and experiments. | Data Scientists and ML Engineers querying global index for top-ranked ML datasets. |
| Kaggle | The premier platform for data science competitions and massive, diverse machine learning datasets. | Data Scientists and ML Engineers training machine learning models or testing predictive algorithms. |
| SEC (EDGAR) | The US Securities and Exchange Commission database, essential for fetching raw corporate financial filings (10-K, 10-Q) and deep market analysis data. | Data Analysts and Business Analysts performing financial modeling or market analysis. |
| FRED | Federal Reserve Economic Data, the ultimate source for macroeconomic time-series data, socioeconomic metrics, and financial health indicators. | Data Engineers building macro-level data warehouses and researchers running global analyses. |
The pipeline enforces sequential fetching and polite-request delays across all these sources to comply with server limitations and ensure stable, continuous extraction.
Internal Code Architecture
data-fetcher-pipeline/
├── README.md
├── SKILL.md
├── LICENSE
├── requirements.txt
├── .env.example
├── config_template.json
├── references/
│ └── source-constraints.md
└── scripts/
├── fetcher_engine.py
├── format_alchemy.py
└── run_pipeline.sh
└── tests/
└── test_fetcher_engine.py
For a comprehensive evaluation of the architecture, refer to the assessment section inside README.md.
What ships with it: 31 files
84.7 KB alongside SKILL.md, 25 of them executable
references/
- source-constraints.md5.8 KB
src/
- data_fetcher/base.pyruns4.9 KB
- data_fetcher/cli.pyruns2.9 KB
- data_fetcher/config.pyruns4.9 KB
- data_fetcher/factory.pyruns1.0 KB
- data_fetcher/fetchers/airbnb.pyruns3.0 KB
- data_fetcher/fetchers/fred.pyruns1.8 KB
- data_fetcher/fetchers/generic.pyruns588 B
- data_fetcher/fetchers/__init__.pyruns0 B
- data_fetcher/fetchers/kaggle.pyruns2.1 KB
- data_fetcher/fetchers/openml.pyruns2.7 KB
- data_fetcher/fetchers/sec.pyruns3.7 KB
- data_fetcher/fetchers/yahoo.pyruns1.1 KB
- data_fetcher/format_alchemy.pyruns3.7 KB
- data_fetcher/__init__.pyruns36 B
- data_fetcher/wizard.pyruns4.9 KB
tests/
- conftest.pyruns109 B
- integration/test_real_pandas.pyruns2.4 KB
- test_base_fetcher.pyruns3.3 KB
- test_cli.pyruns1.5 KB
- test_config.pyruns1.4 KB
- test_fetcher_engine.pyruns2.0 KB
- test_fetchers.pyruns12.9 KB
- test_format_alchemy.pyruns4.7 KB
- config_template.json99 B
- conftest.pyruns89 B
- .gitignore71 B
- LICENSE1.0 KB
- README.md10.9 KB
- requirements.txt38 B
- setup.pyruns1.0 KB