Skip to content
Back to skills

Ingest Website

ASecurity

Ingest an entire website into /memory as a RAG resource. Chains /fetcher (crawl + render JS pages) → /extractor (structured extraction) → /doc2qra (extract QRAs) → /taxonomy (bridge tags) → /memory (store). Supports image download and local file output.

  • 6 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 11, 2026
documentationbashdocumentation

Security analysis

A100/100

Pro scans all 15 files and shows the line behind each finding

Scanned September 11, 2026

npx -y skills add grahama1970/agent-skills --skill ingest-website --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Ingest Website?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Ingest Website
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/grahama1970-ingest-website/badge)](https://www.skillsdirectory.com/skills/grahama1970-ingest-website)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: ingest-website
description: >
  Ingest an entire website into /memory as a RAG resource. Chains /fetcher
  (crawl + render JS pages) → /extractor (structured extraction) →
  /doc2qra (extract QRAs) → /taxonomy (bridge tags) → /memory (store).
  Supports image download and local file output.
triggers:
  - ingest website
  - website to memory
  - website to rag
  - crawl website to knowledge
  - turn website into rag resource
  - ingest web documentation
  - learn from website
  - website knowledge base
metadata:
  short-description: Website → RAG resource via fetcher + doc2qra + memory
provides:
  - ingest-website
composes:
  - fetcher
  - extractor
  - doc2qra
  - memory
  - taxonomy
  - embedding
  - task-monitor
  - agentic-evals
taxonomy:
  - operational
disciplines:
  - data-engineering
  - memory-knowledge
---

> STOP. READ THIS ENTIRE SKILL.MD BEFORE CALLING ANY ENDPOINT.

# Ingest Website

Single command to ingest a website into `/memory` as a RAG resource:

```
/fetcher (crawl) → /extractor (structured extraction) → /doc2qra (QRA extraction) → /taxonomy (bridge tags) → /memory (store)
```

## Quick Start

```bash
# Ingest a website into memory
./run.sh ingest https://sparta.aerospace.org/resources --scope sparta

# Ingest with image download
./run.sh ingest https://example.com/docs --scope research --images

# Ingest specific URLs (not crawl)
./run.sh ingest --urls urls.txt --scope research

# Save fetched content to local files
./run.sh ingest https://example.com/docs --scope research --output-dir ./reference/

# Dry run (fetch + save locally, no memory storage)
./run.sh ingest https://example.com/docs --dry-run --output-dir ./docs/
```

## Commands

### `ingest` - Fetch website and store as RAG resource

| Option | Description |
|--------|-------------|
| `URL` | Base URL to crawl (follows same-domain links) |
| `--urls FILE` | File with one URL per line (skip crawl) |
| `--scope NAME` | Memory scope (default: research) |
| `--images` | Download images (PNG, JPG, SVG) to output dir |
| `--output-dir DIR` | Save fetched pages as local markdown/images |
| `--max-pages N` | Max pages to fetch (default: 50) |
| `--depth N` | Max crawl depth from base URL (default: 2) |
| `--dry-run` | Fetch + save locally, skip memory storage |
| `--no-qra` | Store raw text chunks, skip QRA extraction |
| `--delay MS` | Delay between requests in ms (default: 500) |

## Pipeline

1. **Crawl** (`/fetcher`): Fetch base URL, extract same-domain links, fetch linked pages up to `--depth` and `--max-pages`.
2. **Images** (optional): Download referenced images to `--output-dir`.
3. **Extract** (`/extractor`): Run structured extraction on fetched HTML via HTMLProvider. Produces clean markdown from raw HTML.
4. **Save** (optional): Write extracted content as markdown files to `--output-dir`.
5. **QRA Extract** (`/doc2qra`): Extract Q&A pairs from each page. doc2qra handles taxonomy + embedding internally.
6. **Taxonomy** (`/taxonomy`): Extract federated bridge tags (Precision, Resilience, etc.) — used on `--no-qra` path.
7. **Store** (`/memory`): Batch learn QRA pairs with bridge tags and source tracking tags.
8. **Post-hooks**: Trigger `/embedding` vectors and edge proposal for graph traversal.

## Output

```
Fetched: 13 pages from sparta.aerospace.org
Images: 4 downloaded to ./reference/images/
Stored: 88 QRA pairs in scope 'sparta'
Saved: 13 markdown files to ./reference/
```

## Integration

- `/dogpile` can use this to turn research findings into permanent RAG
- `/ux-lab` uses this for reference product documentation (SPARTA, ATT&CK)
- `/learn-datalake` can compose this for web source ingestion

Files in this skill

  • SKILL.md3.6 KB
  • _qra_batch.py6 KB
  • _report.py5.8 KB
  • fixtures/agentic_eval.json492 B
  • fixtures/inputs/test_urls.txt20 B
  • ingest_website.py30.7 KB
  • pyproject.toml284 B
  • run.sh1.7 KB
  • run/sparta/sparta.aerospace.org_contribute.md9.8 KB
  • run/sparta/sparta.aerospace.org_countermeasures_d3fend_tactics.md3.6 KB
  • run/sparta/sparta.aerospace.org_countermeasures_d3fend_techniques.md52.4 KB
  • run/sparta/sparta.aerospace.org_countermeasures_iso.md5 KB
  • run/sparta/sparta.aerospace.org_countermeasures_mapper.md3.7 KB
  • run/sparta/sparta.aerospace.org_countermeasures_nasabpg.md40.8 KB
  • run/sparta/sparta.aerospace.org_countermeasures_references_mapper.md4.6 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.