plugins/rsvp-speed-reader/skills/rsvp-reading/SKILL.md
Converts a document (.txt, .md, .pdf, .docx) into an RSVP (Rapid Serial Visual Presentation) token stream using the Spritz ORP formula. Invoked when a user wants to speed-read a file, generate a token stream at a target WPM, or prepare a Spritz/RSVP reading session.
npx skillsauth add richfrem/agent-plugins-skills rsvp-readingInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
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).
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/architecture.mdAcceptance criteria:references/acceptance-criteria.mdFallback tree:references/fallback-tree.mdToken stream schema:references/token-stream-schema.md
Invoke this skill when the user:
Before executing, collect:
.txt, .md, .pdf, .docx)300. Range: 100-1000../rsvp_output.jsonfalse.true.If any required fields (file path, WPM) are missing, ask for them before proceeding. Reasonable defaults apply for optional fields.
python ./scripts/parse_document.py \
--input <file_path> \
--output /tmp/rsvp_words.json
python ./scripts/orp_engine.py \
--input /tmp/rsvp_words.json \
--wpm <wpm> \
--output <output_path>
ORP accuracy: The ORP index follows the Spritz formula. Verified by
tests/test_orp_engine.py.
Report to the user:
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}
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]
After successful generation, offer:
rsvp-comprehension-agent.txt or .md inputs when possible.testing
Skill for creating and managing isolated git worktrees (`.worktrees/issue-NNN`) for issue execution branches. USE ONLY when setting up or cleaning up isolated git worktrees for specific issue execution. DO NOT USE for managing local task files (use `task-agent`) or escalating tasks to issues (use `github-issue-backlog-agent`).
data-ai
Skill for orchestrating the end-to-end GitHub issue lifecycle flow: Issue -> Worktree -> Implementation -> PR Creation -> Resolution Closure. USE ONLY when running or dry-running full lifecycle orchestration for resolving an issue with a PR. DO NOT USE for isolated worktree management only (use `issue-worktree-agent`) or logging issues (use `github-issue-agent`).
tools
Automatically ranks GitHub issues (P0-P3) based on friction tier, frequency, and blockages, synchronizing priority labels and GitHub Projects v2 custom fields.
testing
Bridge skill for escalating ephemeral local task scratchpad items (`tasks/*.md`) into durable, taxonomy-validated, evidence-rich GitHub Issues. USE ONLY when promoting a single-session local task into durable repository backlog. DO NOT USE for managing local kanban boards (use `task-agent` instead) or directly querying/commenting on issues (use `github-issue-agent` instead).