---
title: "LLMind recipes — enrich, verify, batch, inspect | LLMind"
description: "LLMind recipes: copy-paste shell commands for the seven tasks people actually do — enrich a file, verify, inspect, batch-enrich a directory, re-sign, strip the layer, and use enriched files with Claude Desktop."
url: https://llmind.org/docs/recipes/
source_format: html
---
# LLMind recipes

Published 2026-05-02

LLMind recipes — copy-paste shell commands for the seven tasks people actually do. Each recipe assumes the [CLI is installed](https://llmind.org/docs/install/) (`pipx install 'llmind-cli[all]'`).

## Enrich a single PDF

The most common operation: write a semantic layer into one file. The file is modified in place; LLMind reads its bytes, generates the layer, signs it, and embeds the result in the XMP packet.

```
llmind enrich document.pdf
```

Add `--summary` to include a one-paragraph description in the descriptive layer. Add `--ocr` to run OCR and capture the transcription in the structural layer. See [CLI reference](https://llmind.org/docs/cli/) for all flags.

## Verify a file's signature

Confirm the embedded layer hasn't been tampered with and the file's bytes match the signature's bound checksum.

```
llmind verify document.pdf
```

Exit code 0 means the signature is valid; non-zero means tampering detected or the verifying key doesn't match the signing key. See the [signing scheme spec](https://llmind.org/spec/signing-scheme/) for the algorithm.

## Inspect what is embedded

Print the descriptive, structural, and provenance layers as readable JSON. Useful for debugging an enrichment pipeline or auditing a document's metadata before downstream processing.

```
llmind inspect document.pdf
```

Add `--format=yaml` for a more human-readable view, or `--layer=descriptive` to print just one layer.

## Batch-enrich a directory

For a corpus of files, enrich all of them in one pass. LLMind walks the directory, enriches each file in place, and prints a summary at the end. Skips files that already have a valid LRFS layer unless `--force` is set.

```
llmind enrich --recursive ./corpus/
```

Combine with `find` for finer control:

```
find ./corpus -name "*.pdf" -print0 | xargs -0 -n1 llmind enrich
```

## Re-sign with a new key

Rotate the signing key without re-running enrichment. The descriptive and structural layers stay; the provenance layer is rewritten with the new key, version, and timestamp.

```
llmind sign --key=$NEW_KEY document.pdf
```

The old signature is overwritten. Verifiers using the old key will fail; verifiers using the new key will succeed. See [signed semantic metadata](https://llmind.org/glossary/signed-semantic-metadata/) for the threat model.

## Strip the semantic layer

Remove the LRFS payload from a file (e.g. before publishing externally, or to recover original bytes). Everything LLMind wrote is removed; the file is otherwise unchanged.

```
llmind strip document.pdf
```

## Use enriched files with Claude

Expose an enriched directory to Claude Desktop via the filesystem MCP server. Claude reads the file, parses the XMP packet, and gets the semantic layer alongside the raw bytes — no re-OCR, no re-parsing.

```
// claude_desktop_config.json
{
  "mcpServers": {
    "files": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/enriched-corpus"]
    }
  }
}
```

For the full setup walkthrough, see [/mcp/claude-desktop/](https://llmind.org/mcp/claude-desktop/).

## Where to go next

-   [Troubleshooting](https://llmind.org/docs/troubleshooting/) — common errors and fixes.
-   [CLI reference](https://llmind.org/docs/cli/) — every command and flag.
-   [Concepts](https://llmind.org/docs/concepts/) — what's actually being embedded.
-   [Product CLI overview](https://llmind.org/product/cli/) — the surface for developers and dataset pipelines.
-   [Use cases](https://llmind.org/use-cases/) — workflow-level patterns.
