Proofread and correct text for grammar, spelling, punctuation, style, clarity, and consistency, with support for multiple style guides and readability analysis.
npx skills add https://github.com/seb1n/awesome-ai-agent-skills --skill proofreading
This skill enables an AI agent to systematically proofread text, catching errors in grammar, spelling, punctuation, style, and consistency. The agent applies a structured multi-pass review process, supports standard style guides (AP, Chicago, APA, or custom house styles), and provides readability scoring alongside tone analysis. Output includes both the corrected text and an annotated summary of every change made.
Scan the text for grammatical errors including subject-verb agreement, incorrect tense usage, dangling modifiers, sentence fragments, run-on sentences, and misplaced clauses. Fix each error and record the original phrasing alongside the correction. Pay special attention to complex sentences where multiple clauses may introduce ambiguity.
Identify misspelled words, commonly confused homophones (e.g., "affect" vs. "effect," "their" vs. "there"), and incorrect word forms. Verify proper nouns and domain-specific terminology against the provided context or glossary. Flag any words that are spelled correctly but likely used in the wrong context.
Review comma usage, semicolons, colons, em dashes, en dashes, hyphens, quotation marks, and apostrophes. Apply the rules of the specified style guide — for example, the Oxford comma for Chicago style but not for AP style. Correct misuse of ellipses, parentheses, and bracket nesting.
Enforce consistent formatting throughout the document: heading capitalization (title case vs. sentence case), number formatting (numerals vs. spelled-out), abbreviation usage (define on first use), and list punctuation. Check for passive voice overuse and recommend active alternatives where the meaning would be clearer. Ensure consistent use of terminology — if "user interface" appears in one place and "UI" elsewhere, unify them.
Evaluate sentence length, paragraph structure, and overall readability. Flag sentences longer than 30 words for possible splitting. Identify jargon or overly complex vocabulary that could be simplified without losing precision. Calculate a readability score (Flesch-Kincaid or equivalent) and report it. Suggest structural improvements such as adding transition sentences or breaking up dense paragraphs.
Assess the overall tone (formal, conversational, academic, persuasive) and verify it matches the user's stated intent. Flag any jarring tonal shifts — for instance, a casual phrase in an otherwise formal report. Perform a final read-through to ensure all corrections integrate smoothly and no new errors were introduced during editing.
Provide the text to proofread along with any relevant context. Optionally specify:
Example prompt: "Proofread the following research abstract for APA style. Flag any passive voice usage and provide a readability score."
Input:
> The study's participants was selected from a pool of undergraduate students, who where enrolled in a introductory psychology course. Data was collected over a 6 week period and analysed using a mix-methods approach. The researchers founded that participants that recieved the intervention showed signficant improvement, however those in the control group did not.
Corrected Output:
> The study's participants were selected from a pool of undergraduate students who were enrolled in an introductory psychology course. Data were collected over a six-week period and analyzed using a mixed-methods approach. The researchers found that participants who received the intervention showed significant improvement; however, those in the control group did not.
Changes Made:
| # | Original | Correction | Reason |
|---|----------|------------|--------|
| 1 | "participants was" | "participants were" | Subject-verb agreement |
| 2 | "who where" | "who were" | Homophone error |
| 3 | "a introductory" | "an introductory" | Article agreement (vowel sound) |
| 4 | "Data was" | "Data were" | "Data" is plural in academic writing (APA) |
| 5 | "6 week" | "six-week" | Spell out numbers under 10; hyphenate compound modifier |
| 6 | "analysed" | "analyzed" | American English spelling (APA default) |
| 7 | "mix-methods" | "mixed-methods" | Incorrect adjective form |
| 8 | "founded" | "found" | Wrong verb form |
| 9 | "participants that" | "participants who" | Use "who" for people |
| 10 | "recieved" | "received" | Spelling error |
| 11 | "signficant" | "significant" | Spelling error |
| 12 | "improvement, however" | "improvement; however," | Semicolon before conjunctive adverb |
Readability: Flesch-Kincaid Grade Level 14.2 (appropriate for academic audience).
Input:
> ## Configration
>
> To setup the SDK, first install the dependancies using npm. Run npm install @acme/sdk in your terminal. After installing you need to initialise the client by calling AcmeClient() constructor and passing you're API key. Make sure the api key is stored securly and is not hard-coded in your source code, we reccommend using environment variables.
Corrected Output:
> ## Configuration
>
> To set up the SDK, first install the dependencies using npm. Run npm install @acme/sdk in your terminal. After installing, you need to initialize the client by calling the AcmeClient() constructor and passing your API key. Make sure the API key is stored securely and is not hard-coded in your source code. We recommend using environment variables.
Changes Made:
| # | Original | Correction | Reason |
|---|----------|------------|--------|
| 1 | "Configration" | "Configuration" | Spelling error in heading |
| 2 | "To setup" | "To set up" | "Set up" is a verb phrase; "setup" is a noun/adjective |
| 3 | "dependancies" | "dependencies" | Spelling error |
| 4 | "After installing you" | "After installing, you" | Missing comma after introductory phrase |
| 5 | "initialise" | "initialize" | American English spelling for consistency |
| 6 | "calling AcmeClient()" | "calling the AcmeClient()" | Missing article |
| 7 | "you're" | "your" | Homophone error ("you're" = "you are") |
| 8 | "api key" | "API key" | Acronym should be capitalized |
| 9 | "securly" | "securely" | Spelling error |
| 10 | "source code, we" | "source code. We" | Comma splice — use a period to separate independent clauses |
| 11 | "reccommend" | "recommend" | Spelling error |
Guide users through a structured workflow for co-authoring documentation. Use when user wants to write documentation, proposals, technical specs, decision docs, or similar structured content. This workflow helps users efficiently transfer context, refine content through iteration, and verify the doc works for readers. Trigger when user mentions writing docs, creating proposals, drafting specs, or similar documentation tasks.
Automatically creates user-facing changelogs from git commits by analyzing commit history, categorizing changes, and transforming technical commits into clear, customer-friendly release notes. Turns hours of manual changelog writing into minutes of automated generation.
Use when implementing any feature or bugfix, before writing implementation code
Use when you have a spec or requirements for a multi-step task, before touching code
Use when creating new skills, editing existing skills, or verifying skills work before deployment
Use when writing or improving README files. Not all READMEs are the same — provides templates and guidance matched to your audience and project type.
| Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, negative parallelisms, and excessive conjunctive phrases.
Official Opentrons Protocol API for OT-2 and Flex robots. Use when writing protocols specifically for Opentrons hardware with full access to Protocol API v2 features. Best for production Opentrons protocols, official API compatibility. For multi-vendor automation or broader equipment control use pylabrobot.
Take seb1n/proofreading from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.
The instructions reference npm.
Without those the skill loads but fails at the first command.