writing-skills
16 writing-style skills for AI agents: 9 measurable frameworks, 7 character voices.
Plain SKILL.md files. Works in any agent that reads skills
(Claude Code, opencode, Codex, Cursor, Kiro, Gemini).
Install
npx skills add writing-skills
One command, every agent on your machine.
Other install methods
| Harness | Command |
|---|---|
| Claude Code plugin | /plugin marketplace add surendranb/writing-skills then /plugin install writing-skills@writing-skills |
| Codex ≥ 0.147 / Kiro | git clone https://github.com/surendranb/writing-skills.git — plugin.json is auto-discovered |
| npm | npm install writing-skills |
| Python | uv add writing-skills or pip install writing-skills |
Use
Ask for the style. The skill loads itself.
"rewrite this in plain language" · "make this a BLUF business update" · "press release in AP style" · "say it like Yoda"
Every skill ends with a Verify checklist the agent must pass before it delivers.
Examples
| You say | Skill that fires | What you get |
|---|---|---|
| "Simplify this insurance letter so anyone can read it" | plain-language |
Sentences ≤25 words, passive voice stripped, jargon replaced — checked against the Plain Writing Act rules |
| "Turn these notes into an update for my VP" | business-writing |
BLUF first line, the ask and deadline explicit, buzzwords deleted |
| "Write the release notes for v2.0" | google-dev-docs |
Active voice, present tense, verb-first headings |
| "Draft the outage announcement" | corporate-communication |
News in line one, reader impact named, zero euphemism |
| "Make this maintenance manual usable by non-native speakers" | asd-ste100 |
Simplified Technical English: one instruction per sentence, no idioms |
| "Press release for the funding round, AP style" | journalism-ap |
AP Stylebook attribution and number rules, no editorializing |
| "Explain recursion like Bob Ross" | bob-ross |
A happy little explanation — calm, encouraging, and technically correct |
| "Rejection email, but make it Paddington" | paddington |
Firm news delivered with unfailing politeness |
The skills
Frameworks — real standards, enforced
| Skill | Enforces |
|---|---|
orwells-rules |
Orwell's 6 rules. Zero dead metaphors, short Saxon words, prune verbal limbs, active voice, barbarism override. |
plain-language |
Plain Writing Act. Sentences ≤25 words, passive ≤10%, jargon ban list. |
business-writing |
BLUF first line, explicit ask + deadline, buzzword ban list. |
corporate-communication |
News first, reader impact named, zero euphemism. |
gov-uk-style |
GOV.UK guide. Keyword-first headings, ≤5-sentence paragraphs. |
asd-ste100 |
Simplified Technical English. One instruction per sentence, no idioms. |
google-dev-docs |
Google style. Active voice, present tense, verb-first headings. |
journalism-ap |
AP Stylebook. Attribution, number rules, zero editorializing. |
scott-adams |
Simplicity-is-persuasion. Curiosity-hook openers, ≤15-word sentences, prune "very/really". |
Voices — characters, rate-limited against caricature
ted-lasso · jack-sparrow · shrek · yoda · winnie-the-pooh · paddington · bob-ross
Contribute
Copy template/SKILL.md, fill it, run
python3 scripts/validate_skills.py. CI enforces the contract — see
CONTRIBUTING.md.
License
MIT — Surendran B
Metadata
Release files for writing-skills 0.6.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| writing_skills-0.6.0.tar.gz | 35.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| writing_skills-0.6.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 73.9 kB
Release files / writing_skills-0.6.0.tar.gz
| Download URL | writing_skills-0.6.0.tar.gz |
|---|---|
| Size | 35.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b3f00bc3b096ed1f152c87bec3d751859bb3c5a8a56b34a0a18b25530eeda62c
|
|
BLAKE2b-256 checksum How to use checksums |
c59ca3da5dfac53275243c54508ca1e5ac5516d72daa76a67d6ea6c979cc82a7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.
Transparency logRelease files / writing_skills-0.6.0-py3-none-any.whl
| Download URL | writing_skills-0.6.0-py3-none-any.whl |
|---|---|
| Size | 38.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
bf600d1781d8abd287718ff8cfff75f828ac3246c19764487a32eb18f3ac55e2
|
|
BLAKE2b-256 checksum How to use checksums |
01b059fe0dd944cb48e72550bbf259cb897222fa26d00ba8c40f10af93913fe4
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 2, 2026.
Transparency log