rsvp-reading
Dependencies
This skill requires Python 3.8+ and standard library only. No external packages needed.
To install this skill's dependencies:
pip-compile ./requirements.in
pip install -r ./requirements.txt
See ./requirements.txt for the dependency lockfile (currently empty — standard library only).
RSVP Reading Skill
Rapid Serial Visual Presentation (RSVP) is a speed reading method popularized by tools like Spritz. Words are flashed one at a time in a fixed position, while one letter per word is highlighted (typically in red) as an eye anchor — the Optimal Recognition Point (ORP). This eliminates horizontal eye movement, the primary bottleneck of traditional reading, enabling speeds of 200-600+ WPM with solid comprehension.
This skill converts any document into an RSVP token stream: each word paired with its ORP index and a calibrated display delay based on your target WPM.
Full architecture:
references/architecture.mdAcceptance criteria:references/acceptance-criteria.mdFallback tree:references/fallback-tree.mdToken stream schema:references/token-stream-schema.md
Trigger Conditions
Invoke this skill when the user:
- Says "speed read [file]", "RSVP [file]", or "read [file] at [N] WPM"
- Uploads or references a document and asks to "read it fast"
- Requests a token stream or reading session from a document
Discovery Phase
Before executing, collect:
- Input file path - What file should be parsed? (
.txt,.md,.pdf,.docx) - WPM - Reading speed in words-per-minute. Default:
300. Range:100-1000. - Output format - Where to save the token stream JSON? Default:
./rsvp_output.json
If any are missing, ask for them before proceeding.
Execution
Step 1: Parse the Document
python3 .agents/skills/rsvp-reading/scripts/parse_document.py \
--input <file_path> \
--output /tmp/rsvp_words.json
Step 2: Generate Token Stream
python3 .agents/skills/rsvp-reading/scripts/orp_engine.py \
--input /tmp/rsvp_words.json \
--wpm <wpm> \
--output <output_path>
Step 3: Confirm Output
Report to the user:
- Total word count
- Estimated reading time at the chosen WPM
- Output file path
- Preview of first 5 tokens
Output Format
Each token in the stream follows the schema in references/token-stream-schema.md:
{"w": "Hello", "orp": 1, "delay_ms": 200, "is_sentence_end": false, "is_para_end": false}
Confirmation Gate
Before generating for files > 50,000 words, display:
This document contains ~{word_count} words.
At {wpm} WPM this will take ~{minutes} minutes to read.
Generating token stream (~{token_count} tokens) to {output_path}.
Proceed? [yes/no]
Next Actions
After successful generation, offer:
- Open the reading session with the
rsvp-comprehension-agent - Adjust WPM and regenerate
- Parse a different document
More from richfrem/agent-plugins-skills
markdown-to-msword-converter
Converts Markdown files to one MS Word document per file using plugin-local scripts. V2 includes L5 Delegated Constraint Verification for strict binary artifact linting.
52excel-to-csv
>
32zip-bundling
Create technical ZIP bundles of code, design, and documentation for external review or context sharing. Use when you need to package multiple project files into a portable `.zip` archive instead of a single Markdown file.
29learning-loop
(Industry standard: Loop Agent / Single Agent) Primary Use Case: Self-contained research, content generation, and exploration where no inner delegation is required. Self-directed research and knowledge capture loop. Use when: starting a session (Orientation), performing research (Synthesis), or closing a session (Seal, Persist, Retrospective). Ensures knowledge survives across isolated agent sessions.
26ollama-launch
Start and verify the local Ollama LLM server. Use when Ollama is needed for RLM distillation, seal snapshots, embeddings, or any local LLM inference — and it's not already running. Checks if Ollama is running, starts it if not, and verifies the health endpoint.
26spec-kitty-checklist
A standard Spec-Kitty workflow routine.
26