iso-24495 README

The project's README from github.com/GaZmagik/iso-24495. As one markdown file: README.md.

ISO 24495 Plain Language Skills

Seven Agent Skills that support plain language writing, document audits, code, and organisational implementation. They apply principles inspired by the ISO 24495 Plain language series.

The skills are plain SKILL.md files with agent-neutral wording. Any tool that reads the Agent Skills format can use them.

This repository also packages them as a Claude Code plugin with an ISO 24495 output style (output-styles/iso-24495.md). Select the style with /output-style to hold every response to the core rules without relying on skill activation.

Skills

Skill Scope
iso-24495-1 Core principles. Governs all user-facing output: no filler preambles, short sentences and paragraphs, active voice, scannable structure, concrete instructions.
iso-24495-2 Legal writing. Extends the core skill for contracts, licences, and compliance text: standardised modal verbs, no legalese, named actors, structured conditional clauses.
iso-24495-3 Science and technical writing. Extends the core skill for documentation, architecture, and code review: progressive disclosure, exact file citations, defined acronyms.
iso-24495-4 Organisational implementation (provisional). A task skill for plain language gap analysis in organisations: a process-artefact sweep, a corpus audit, a five-dimension maturity model with deterministic scoring, and an append-only audit trend. Ships TypeScript tooling run with Bun (bun test covered). Based on the unpublished ISO/CD 24495-4 committee draft.
iso-24495-5 Document design (provisional). Extends the core skill for structuring complex documents: an opening block, visual hierarchy, navigation aids, layered detail, comparisons, consistent signalling, and a signpost for the reader who wanted a different document. Ships a decision record, a runbook and a design document template. Based on the unpublished ISO/WD 24495-5 working draft.
iso-24495-code Plain language in code. Applies the principles to what a person reads in source: the order units appear in, their names, what comments say, and what an error tells the reader who hits it. Measured to change how Claude structures a file, at no cost to correctness.
iso-24495-text-audit User-invoked text audit. Checks a selected .md, .markdown, or .txt file or directory. Reports mechanical findings with locations, without deciding validity or compliance.

The core skill activates the relevant writing skills automatically. It triggers iso-24495-2 for legal content, iso-24495-3 for technical content, and iso-24495-5 for complex documents. The text audit never activates automatically.

All skills exempt internal reasoning. The writing skills preserve code blocks, commands, and logs untouched; iso-24495-code is the exception, because governing code is its subject. Technical and legal accuracy always supersede formatting rules.

Installation (Claude Code)

Add this repository as a plugin marketplace, then install the plugin:

/plugin marketplace add https://github.com/GaZmagik/iso-24495.git
/plugin install iso-24495-plain-language@iso-24495

Use the full HTTPS address as shown. The short owner/repo form makes some Claude Code versions clone over SSH, which fails without GitHub SSH keys.

Or from a local clone:

/plugin marketplace add ./path/to/this/repo
/plugin install iso-24495-plain-language@iso-24495

Installation (Codex CLI)

Codex reads the same marketplace manifest, so the plugin installs from the same address:

codex plugin marketplace add https://github.com/GaZmagik/iso-24495.git
codex plugin add iso-24495-plain-language@iso-24495

Or from a local clone, where . is the repository root:

codex plugin marketplace add .
codex plugin add iso-24495-plain-language@iso-24495

Every skill carries agents/openai.yaml, which gives Codex its display name, its short description, and the prompt Codex offers for it. Invoke a skill by name, as in $iso-24495-1, or ask for it in words.

Codex has no output style, so the same rules are a skill there: iso-24495-style holds the output style word for word, and a test keeps the two identical. It lives in codex-skills/ rather than skills/, because Claude Code scans skills/ and would otherwise offer a skill its output style already covers. Codex reads both directories, named in .codex-plugin/plugin.json.

Name the skill in your AGENTS.md to apply it to every response:

Apply `iso-24495-style` to every response.

Put that in your project's AGENTS.md or in ~/.codex/AGENTS.md. An AGENTS.md inside a plugin is ignored, so a plugin cannot apply itself.

Usage

Once installed, the agent loads the skills when their descriptions match the task. To apply one explicitly, ask for it by name, for example: "Apply iso-24495-2 to this licence text."

Invoke iso-24495-text-audit directly and supply one file or directory. The skill reads only that path and leaves every change to the user:

/iso-24495-plain-language:iso-24495-text-audit docs/policy.md

To enforce the core skill on every response, add a line to your agent's instruction file (CLAUDE.md, AGENTS.md, or equivalent):

- ALWAYS activate and adhere to the `iso-24495-1` Plain Language skill across all responses

For agents without a plugin system, copy the skills/ subdirectories into wherever the tool discovers skills.

Disclaimer

This unofficial project is not affiliated with, endorsed by, or approved by the International Organization for Standardization (ISO). The skills contain original guidance inspired by the ISO 24495 series. They do not reproduce the text of any ISO standard.

Publication status: Part 1 published 2023, Part 2 August 2025, Part 3 May 2026. Parts 4 and 5 remain unpublished drafts (ISO/CD 24495-4 and ISO/WD 24495-5). Their skills are provisional guidance from public scope statements, to be revised when ISO publishes.

Conformance disclaimer. The full ISO 24495 texts are licensed and have not been consulted. These skills are built from public principles, published scopes, and common plain-language practice.

The principles derive from the International Plain Language Federation's freely published framework. Every quantitative rule here (sentence length, paragraph density, legalese, heading depth) is this project's own proxy. No rule is a clause of any standard.

Nothing this plugin produces is a statement of ISO conformance. No certification scheme exists for ISO 24495. "Aligned" in the skills means aligned with this project's interpretation, nothing more.

Reference

Read the standard rather than this project's reading of it.

The ISO texts are licensed, so the standards themselves cost money. Everything in this repository is built from the freely published material above.

What the engine reads

A rule can only be as right as the text it reads. So the engine parses Markdown the way CommonMark describes it: each line is matched against the containers already open, then against any container it starts. What remains is the block a rule measures. That is what lets a wrapped list item, a quotation continuing without its marker, and a heading written inside a list all be read correctly.

Measured, because a reader reads them:

Not measured, because they are not sentences:

The parser is checked against the CommonMark reference implementation. 302 documents are recorded in skills/iso-24495-4/tests/fixtures/reference-blocks.ts, and every one that this engine reads differently carries the reason why. The reference is not a dependency: it was installed outside the repository, asked once, and its answers kept.

User-invoked text audit

The iso-24495-text-audit skill audits a selected .md, .markdown, or .txt file or directory. It uses the same rule engine as the Part 4 corpus audit. It reports each finding with its file, line, rule, and explanation.

The rules cover sentence length, sentence averages, paragraph length, legalese, and heading depth. They also cover heading-skip, heading-style, acronym-undefined, doublet, prose-enumeration, link-text, image-alt, wordy-phrase, complex-word, double-negative, filler-opening, and table-header.

The last two serve readers who hear or touch a document rather than look at it. A screen reader can list every link with no sentence around it, and an image without alternative text is silence.

The result reports zero findings when no implemented rule fires. That result does not prove the text suits its audience or purpose.

The shipped acronym list stays universal, so a technical vocabulary needs naming per project. Create .iso-24495-4/acronyms.json with the terms your readers already know:

["SQL", "SDK", "CSS", "IDE"]

An unreadable or malformed file leaves the shipped list alone, because an advisory tool must never be the reason a document cannot be checked.

The skill never runs automatically. It requires Bun and does not alter the selected text.

Directory audits skip selected or nested symbolic links and directory junctions. The result reports each skipped entry instead of reading beyond the selected path or following a cycle.

Testing policy

Run bash scripts/check.sh before you push. That script is the whole gate, and GitHub Actions runs the same file on every pull request. A failure on the server therefore reproduces locally with one command. New checks belong in the script, never in the workflow.

bun test always measures coverage. Every measured source file must cover 100% of lines and functions. Test files are excluded from those totals.

The current suite covers 100% of measured source lines and functions.

Bun reports line and function coverage only in this toolchain. We make no branch-coverage claim.

Logic-free composition roots are separate entry files. Tests never import them, so Bun excludes them from the coverage report. End-to-end tests still exercise those entries.

Every new test receives a mutation check. The implementation is deliberately broken, the test must fail, and the correct behaviour is then restored.

TypeScript style

This project follows the Google TypeScript Style Guide. It uses kebab-case filenames instead of snake_case and double quotes instead of single quotes. Both deviations match the wider ecosystem, and the repository conventions test enforces the mechanically checkable rules.

Why this project holds itself to these rules

This repository is both the tool and a user of the tool. Its shared gate audits every supported document, including this file.

That is deliberate. A plain language project that exempts itself has no claim on anyone else. The Part 4 maturity audit runs against this repository first, and its findings are acted on here first.

Roadmap

All seven skills and the output style ship in v0.6.0. What remains:

Plain-language checks on script comments were once planned for this release. That plan is cancelled. Comments are fragments, and checking them well would cost more machinery than the advice is worth.

Licence

MIT

iso-24495 (GaZmagik/iso-24495)

Searching Database…

Что это?Набор из семи Agent Skills (плюс стиль вывода), которые учат ИИ-агентов писать понятным языком, следуя принципам, вдохновлённым серией стандартов ISO 24495 «Plain Language». Они охватывают базовые правила письма, юридические тексты, технические тексты, анализ организационных пробелов, оформление документов, понятный код и инструмент аудита текста.
Это библиотека, плагин или что-то другое?Навыки — это обычные файлы SKILL.md в нейтральном к агентам формате Agent Skills, пригодные для любого совместимого инструмента. Этот репозиторий также упаковывает их как плагин для Claude Code со стилем вывода ISO 24495 и как навыки Codex CLI через agents/openai.yaml.
Как установить это в Claude Code или Codex CLI?В Claude Code добавьте этот репозиторий как маркетплейс плагинов по полному HTTPS-адресу (не в коротком виде владелец/репозиторий), затем установите плагин. Codex CLI читает тот же манифест маркетплейса и устанавливается с того же адреса или из локального клона.
Нужно ли что-то ещё, кроме Claude Code или Codex, чтобы пользоваться навыками?Сами навыки письма не требуют дополнительных инструментов, но навыки iso-24495-4 (организационный аудит) и iso-24495-text-audit поставляются с утилитами на TypeScript, для запуска которых нужен Bun.
Основаны ли навыки по частям 4 и 5 на финальной опубликованной версии стандарта ISO?Нет. Части 4 (внедрение в организации) и 5 (оформление документов) предварительные: они основаны на неопубликованных комитетских/рабочих черновиках ISO и будут переработаны, когда ISO опубликует финальный текст. Ни один из навыков не воспроизводит и не сертифицирует соответствие ISO; это собственная интерпретация проекта.
Какие навыки и когда активируются автоматически?Базовый навык (iso-24495-1) активируется автоматически для обычного вывода и подключает iso-24495-2 для юридических текстов, iso-24495-3 для технических и iso-24495-5 для сложных документов; навык text-audit никогда не активируется сам — его нужно вызывать по имени.
Что именно проверяет навык iso-24495-text-audit?Он проверяет выбранный файл или каталог .md, .markdown или .txt на проблемы вроде длины предложений и абзацев, канцелярита, неопределённых аббревиатур, пропущенных уровней заголовков, многословных оборотов, двойных отрицаний и отсутствующего alt-текста; для каждой находки указываются файл, строка, правило и объяснение, но соответствие стандарту он не выносит.
Чем подход к коду отличается от обычного текста?Навык iso-24495-code применяет принципы понятного языка к самому исходному коду (порядок программных единиц, имена, комментарии, сообщения об ошибках), а остальные навыки письма не трогают блоки кода, команды и логи.
Можно ли настроить список аббревиатур, который использует текстовый аудит?Да, создайте файл .iso-24495-4/acronyms.json и перечислите в нём термины, которые ваши читатели уже знают; если файл окажется некорректным, инструмент откатится к встроенному универсальному списку, а не провалит проверку.
Как в проекте обеспечивают качество кода?Проект запускает bash scripts/check.sh как единственный шлюз CI, требует 100% покрытия строк и функций тестами на Bun для измеряемых файлов исходников и применяет мутационную проверку к каждому новому тесту, чтобы убедиться, что тот действительно падает на сломанной логике.
Creator
GaZmagik
Size
7.4 MB
Stars
194
Age
2mo
Commits · 90 Days