Skip to content
Back to skills

Ingest Compliance Doc

ASecurity

Single-command compliance document ingestion pipeline. Chains extractor → cui-marker → doc2qra → taxonomy → memory for defense/compliance PDFs. Handles NIST, CMMC, DISA STIG, and ITAR documents end-to-end.

  • 6 stars
  • 0 votes
  • 0 copies
  • 2 views
  • Added September 11, 2026
testinggobashapisecurity

Works with

  • api

Security analysis

A100/100

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

Scanned September 11, 2026

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

Installs into .claude/skills of the current project.

Are you the author of Ingest Compliance Doc?

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

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

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-compliance-doc
description: >
  Single-command compliance document ingestion pipeline. Chains extractor →
  cui-marker → doc2qra → taxonomy → memory for defense/compliance PDFs.
  Handles NIST, CMMC, DISA STIG, and ITAR documents end-to-end.
allowed-tools:
  - run_command
  - read_file
triggers:
  - ingest compliance
  - ingest nist
  - ingest stig
  - ingest cmmc
  - compliance document
  - ingest itar document
  - compliance ingestion
metadata:
  short-description: End-to-end compliance document ingestion pipeline
provides:
  - ingest-compliance-doc
composes:
  - extractor
  - cui-marker
  - doc2qra
  - taxonomy
  - memory
  - task-monitor
  - agentic-evals
taxonomy:
  - security
  - compliance
disciplines:
  - data-engineering
  - compliance-security
  - extraction
---

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

# Ingest Compliance Document

Single command to ingest a defense/compliance PDF through the full pipeline:

```
PDF → extractor → cui-marker → doc2qra → taxonomy → memory
```

## Commands

| Command | Description |
|---------|-------------|
| `./run.sh ingest <path>` | Full pipeline on a PDF/URL |
| `./run.sh ingest <path> --preset nist_controls` | Force NIST control preset |
| `./run.sh ingest <path> --dry-run` | Show what would happen without executing |
| `./run.sh ingest <path> --skip-cui` | Skip CUI marking (for public documents) |
| `./run.sh batch <dir>` | Process all PDFs in a directory |
| `./run.sh status` | Show pipeline health (all skills available?) |

## Pipeline Stages

### Stage 1: Extract (extractor skill)
- Profile document to detect preset (nist_controls, requirements_spec, etc.)
- Extract sections, tables, figures via deterministic pipeline
- Output: structured JSON + markdown

### Stage 2: CUI Check (cui-marker skill)
- Scan extracted text for CUI indicators
- Apply appropriate markings to ArangoDB document metadata
- Flag legacy markings (FOUO, SBU) for conversion

### Stage 3: QRA Extraction (doc2qra skill)
- Generate QRA triplets via LLM
- Grounding validation filters hallucinations

### Stage 4: Taxonomy (taxonomy skill)
- Extract federated taxonomy tags (bridges: Precision, Resilience, etc.)
- Map NIST control families to taxonomy domains

### Stage 5: Memory Storage (memory skill)
- Store QRAs with taxonomy tags in ArangoDB
- Create graph edges between controls and requirements
- Enable multi-hop recall for compliance queries

### Stage 6: Control Extraction (automatic via extractor s12)
- Extractor's s12_framework_mapper runs automatically during Stage 1
- Extracts NIST, CWE, ATT&CK, SPARTA, D3FEND, ISO control references from document chunks
- Creates `chunk_control_edges` (evidence: document references control)
- Creates `requirement_control_edges` for requirements (SHALL/MUST language, tables, specs)
- Queues `proof_jobs` for `/lean4-prove` formal verification of requirement→control claims
- 3-tier extraction: regex (wide net) → RapidFuzz (validate vs 7K control catalog) → classifier (future)
- Enables `/memory recall` to traverse from compliance documents directly to the controls they reference

## Supported Document Types

| Type | Detected By | Preset |
|------|------------|--------|
| NIST SP 800-171 | "NIST SP", control IDs (AC-*, SC-*) | nist_controls |
| NIST SP 800-53 | "NIST SP", control catalog format | nist_controls |
| DISA STIG | "STIG", V-number findings | requirements_spec |
| CMMC Assessment Guide | "CMMC", "Cybersecurity Maturity" | requirements_spec |
| ITAR/EAR Documents | Export control markers | requirements_spec |
| Engineering Specs | REQ-xxx, "Shall" language | requirements_spec |

## Example

```bash
# Ingest NIST SP 800-171
./run.sh ingest ~/Downloads/sp800-171r2.pdf

# Output:
# [1/5] Extracting... (detected preset: nist_controls, 113 pages)
# [2/5] CUI scanning... (detected: INFOSEC, marking applied)
# [3/5] Generating QRAs... (110 controls → 342 QRAs)
# [4/5] Extracting taxonomy... (14 families mapped)
# [5/5] Storing to memory... (342 QRAs stored, 156 edges created)
# Done. 342 QRAs ingested to scope: compliance
```

Files in this skill

  • SKILL.md4 KB
  • fixtures/agentic_eval.json499 B
  • ingest_compliance.py10.9 KB
  • pyproject.toml398 B
  • run.sh440 B
  • sanity.sh578 B

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.