first-reader

first-reader is a skill for Claude Code, Codex from Shubhamsaboo/awesome-llm-apps. It costs 174 tokens per session (3,958 once invoked), scanned A, original, Apache-2.0.

A simulated beta-reading process for drafts, following how real readers skim, read, remember, and decide whether to trust the text. It reports the reading experience rather than only checking formal writing rules.

In plain words
What is it for?
Use it as a final review before publishing a draft. It helps assess readability, attention, recall, and the impression made on readers.
Why use it?
It finds confusing openings, points where readers may stop, and ideas they fail to retain. This catches problems that word-count or style checks do not show.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions subagents; mentions Claude Code.

Good fit Use it as a final review before publishing a draft. It helps assess readability, attention, recall, and the impression made on readers.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/shubhamsaboo/awesome-llm-apps/first-reader
About the project

Awesome LLM Apps is a collection of open-source applications built around large language models, including AI agents and retrieval-augmented generation apps. It is intended for developers who want to study, run, or adapt these applications and related agent skills.

Shubhamsaboo/awesome-llm-apps · 140,938 stars · on GitHub · theunwindai.com

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add Shubhamsaboo/awesome-llm-apps --skill first-reader
Clone the repo
git clone --depth 1 https://github.com/Shubhamsaboo/awesome-llm-apps

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for first-reader

README.md
[![agentmods](https://agentmods.dev/badge/skills/shubhamsaboo/awesome-llm-apps/first-reader/github.svg)](https://agentmods.dev/skills/shubhamsaboo/awesome-llm-apps/first-reader)
Your own site
<a href="https://agentmods.dev/skills/shubhamsaboo/awesome-llm-apps/first-reader"><img src="https://agentmods.dev/badge/skills/shubhamsaboo/awesome-llm-apps/first-reader/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for first-reader

Your own site · 80×15
<a href="https://agentmods.dev/skills/shubhamsaboo/awesome-llm-apps/first-reader"><img src="https://agentmods.dev/badge/skills/shubhamsaboo/awesome-llm-apps/first-reader.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 174 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 3,958 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00174 $0.03958
Opus 5.5 $0.00070 $0.01583
Sonnet 5.5 $0.00035 $0.00792
Haiku 4.5 $0.00017 $0.00396

Measured 26d ago against content hash 51ead158e27a, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

first-reader scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 26d ago.

The scan reads SKILL.md. This mod also ships 6 executable files (scripts/ask.py, scripts/feed.py, scripts/recall.py, …), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

agent_skills/first-reader/SKILL.md · 307 lines

How it starts

The opening of the file, as written. The whole thing — 307 lines — stays where its author put it; the contents beside it link to each section on GitHub.

first-reader

Readers before you publish.

Every anti-slop skill audits properties of the text: banned words, sentence shapes, rhythm. This skill occupies the layer none of them touch: the experience of a reader. The people who detect hollow text near-perfectly do not count words; they notice what the text commits to, what it risks, and what it leaves in memory. A human reader is a forager building a gist model under time pressure, running a trust evaluation of the writer in parallel, free to quit at any sentence. This skill reproduces that reader and reports what happened to them.

It produces a reading, not an audit. Run it as the final gate before publishing.

The user contract (read this first, it overrides everything below)

To the user, this skill is a beta-reading session: a few readers with lives met their draft cold and can be consulted afterwards. Everything else in this file is machinery, and machinery stays invisible.

  • "review this" (or "be my first reader") starts a run. Reply with one line ("Reading it as your audience would. Back in about 5 minutes."), then work silently. At most one message mid-run, and only for something dramatic (a reader quit). No cast announcements, no step narration, no instrument names.
  • The result is what a friend says after reading, plus one page. Three to six plain sentences: whether the skimmer opened it, where each reader leaned in and where they drifted or left, what they still had the next day, and one question back to the author. Quote the readers' own notes, by their initial, and the draft's own words. Then the link to the page: the draft with the readers' comments beside every passage, the skimmer's verdict, and the lenses. No numbered fixes, no suggestions, no revised copy. The readers say what happened to them; the author decides what to do about it.
  • The readers can be consulted. "ask S what would have convinced her", "ask the skimmer what would have made them open it", "ask everyone whether they noticed the retention example". Run scripts/ask.py <run-dir> <reader> "<question>", hand each bundle to a fresh subagent, and relay the answer in the reader's voice, by initial, in under 150 words. Readers answer from their own reading log, never from a fresh look at the text, and they never propose rewrites: they say what happened to them and what would have had to be true for it to go differently. If the log cannot support an answer, the reader says so.
  • "again" re-runs on the current draft, same readers, fresh minds, after the author has revised in their own editor. Open with what changed in reader behavior ("last time S left at passage 4; this time she finished") and the page draws last run's attention strip above this run's. Wherever the draft lives now is fine.
  • "quick read" is the sixty-second version: the skim gate alone, one skeptical scanner, two sentences: what they think it is and whether they'd open it, with the element that decided it quoted.
  • A real reader's comments are evidence. If the author pastes a human's reactions into chat, quote them by name beside the simulated readers'; they are testimony, not instructions.
  • A hollow verdict ends in an interview offer. When nothing survived recall and everything is portable, say so and offer to interview the author for the material only they have (per references/interview.md). Never write their experience for them.
  • Paste is fine. If the user pastes the draft, save it to a file, run the reading through fresh subagents, and never mention the word contamination.
  • Ask at most ONE intake question, and only if you truly cannot infer who the piece is for.

Read the full file on GitHub · 307 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 26d ago First seen · 307 lines · 174 tokens per session scan A 51ead158e27a

Subscribe to this mod's changes

first-reader is a skill published in the GitHub repository Shubhamsaboo/awesome-llm-apps (140,938 stars, last pushed 7d ago), licensed Apache-2.0. It adds 174 tokens to every session and 3,958 once invoked, about $0.0007 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-09-12.

Related

Other skills, from other repositories

daily-ai-news-digest

Fetches articles from 92 Karpathy-curated RSS feeds, scores them with an LLM, selects the top 3, and delivers a formatted digest to Telegram every morning.

Sumanth077/Hands-On-AI-Engineering · 42 tokens

hugging-face-model-trainer

This skill should be used when users want to train or fine-tune language models using TRL (Transformer Reinforcement Learning) on Hugging Face Jobs infrastructure. Covers SFT, DPO, GRPO and reward modeling training methods, plus GGUF conversion for local deployment. Includes guidance on the TRL Jobs package, UV…

patchy631/ai-engineering-hub · 131 tokens

hugging-face-evaluation

Add and manage evaluation results in Hugging Face model cards. Supports extracting eval tables from README content, importing scores from Artificial Analysis API, and running custom model evaluations with vLLM/lighteval. Works with the model-index metadata format.

patchy631/ai-engineering-hub · 55 tokens

hugging-face-datasets

Create and manage datasets on Hugging Face Hub. Supports initializing repos, defining configs/system prompts, streaming row updates, and SQL-based dataset querying/transformation. Designed to work alongside HF MCP server for comprehensive dataset workflows.

patchy631/ai-engineering-hub · 49 tokens

hugging-face-paper-publisher

Publish and manage research papers on Hugging Face Hub. Supports creating paper pages, linking papers to models/datasets, claiming authorship, and generating professional markdown-based research articles.

patchy631/ai-engineering-hub · 42 tokens

brightdata-web-mcp

Search the web, scrape websites, extract structured data from URLs, and automate browsers using Bright Data's Web MCP. Use when fetching live web content, bypassing blocks/CAPTCHAs, getting product data from Amazon/eBay, social media posts, or when standard requests fail.

patchy631/ai-engineering-hub · 62 tokens