transparent-reader

Wrap Rust Read streams to compute hashes and byte counts without buffering.

1|Updated Nov 25, 2025
One-click install
npx skills add https://github.com/89jobrien/dotfiles --skill transparent-reader
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: transparent-reader
Source: https://github.com/89jobrien/dotfiles/tree/main/dot-claude/skills/transparent-reader
Command: npx skills add https://github.com/89jobrien/dotfiles --skill transparent-reader

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Compute a side effect (hash, checksum, byte count, progress) on streaming bytes without buffering or materializing the full stream, keeping the data flow invisible to the consumer.

Core Features & Use Cases

  • Streaming side effects: hash bytes, count bytes, or track progress while data streams through.
  • Transparent wrapper: the inner reader remains hidden from the consumer.
  • Composability: stack multiple wrappers to apply several side effects in a pipeline.

Quick Start

Wrap any Read source with the transparent reader and call finalize to retrieve the computed digest and total bytes read.

Frequently Asked Questions about transparent-reader

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

FAQPage Schema
How do I compute a hash on a streaming byte pipeline in Rust without buffering the entire stream?

To compute a hash on a streaming byte pipeline without buffering, you can wrap your Rust Read source with a transparent reader. It updates the hasher during each read operation, and you call finalize to retrieve the computed digest.

What is the best way to count bytes read from a Rust Read consumer while keeping the data flow invisible?

The best way to count bytes read from a Rust Read consumer while keeping the data flow invisible is to use a transparent reader wrapper. It updates a byte counter on each read without materializing the full stream.

Can I apply multiple side effects like checksums and byte counts to a single streaming data pipeline?

Yes, you can apply multiple side effects like checksums and byte counts to a single streaming data pipeline. Transparent readers are composable, allowing you to stack multiple wrappers to apply several side effects simultaneously.

Does a transparent reader wrapper affect the original data consumed by the inner reader?

No, a transparent reader wrapper does not affect the original data consumed by the inner reader. It intercepts streaming bytes to compute side effects like hashes or byte counts while keeping the inner reader hidden from the consumer.

When should I not use a transparent reader for streaming data observation?

You should not use a transparent reader for streaming data observation if your use case requires buffering or materializing the full stream. It is specifically designed to compute side effects without buffering, keeping the data flow invisible to the consumer.