Technical Writing
rsmdt/the-startup
Create architectural decision records (ADRs), system documentation, API documentation, and operational runbooks.
Applies an ASD-STE100-derived register to operator and procedural text.
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install athola/claude-night-market simplified-technical-english --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .claude/skills/simplified-technical-english && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .claude/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-englishType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install athola/claude-night-market simplified-technical-english --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .agents/skills/simplified-technical-english && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .agents/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install athola/claude-night-market simplified-technical-english --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .cursor/skills/simplified-technical-english && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .cursor/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/athola/claude-night-market.git --path plugins/scribe/skills/simplified-technical-english--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install athola/claude-night-market simplified-technical-english --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .gemini/skills/simplified-technical-english && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .gemini/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install athola/claude-night-market simplified-technical-englishInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .github/skills/simplified-technical-english && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .github/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add athola/claude-night-market --skill simplified-technical-english -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install athola/claude-night-market simplified-technical-english --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/athola/claude-night-market.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/scribe/skills/simplified-technical-english .opencode/skills/simplified-technical-english && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "simplified-technical-english" agent skill from https://github.com/athola/claude-night-market/tree/master/plugins/scribe/skills/simplified-technical-english into .opencode/skills/simplified-technical-english/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "simplified-technical-english", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
simplified-technical-englishApplies an ASD-STE100-derived register to operator and procedural text.
Simplified Technical English is an agent skill from athola/claude-night-market. Applies an ASD-STE100-derived register to operator and procedural text. Use when writing runbooks or steps. Do not use for docstrings, ADRs, or rationale.
Its SKILL.md is about 2k tokens, which your agent loads only when the skill is triggered. The skill folder holds 5 other files (for example `modules/adopted-rules.md`, `modules/licensing.md` and `modules/reconciliation.md`).
It sits in Development, covering Architecture decision records, Technical documentation and Runbooks and postmortems. The repository describes itself as: 23 Claude Code plugins: TDD enforcement hooks, git/PR workflows, spec-driven development, code review, project lifecycle, fix-from-error, maintenance automation, context… The licence is MIT.
Read from SKILL.md and the folder at commit 9f3eb00. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
uvpythonFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Simplified Technical English loads about 2k tokens when it runs. Until then it costs about 46 tokens; SKILL.md has 1,098 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from athola/claude-night-market at commit 9f3eb00, republished under its MIT licence (© athola). 1,098 words, ~2,046 tokens.
.claude/skills/simplified-technical-english/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.ASD-STE100 is a controlled language written so that a maintenance technician reading a second language can follow a procedure without misreading it. It has two halves: writing rules, and a dictionary that fixes one meaning per word.
This skill adopts part of the first half. It never ships the second.
An operator can get most of the value by naming the standard:
## Communication style
Use ASD-STE-100 when you speak to the operator.That works because the name pulls a whole register the model already
knows, at a cost of one line. Skill(imbue:latent-space-engineering)
covers the technique in its named-register-invocation module, together
with the known failure mode: practitioners report that the constraint
decays partway through a long session. The checks below exist because
guidance decays and counting does not.
This is an STE-derived authoring aid. It is not an implementation of
ASD-STE100, and no output of it may be called STE compliant. Read
modules/licensing.md before writing anything that describes this
work to a reader outside the project. The short version: the standard
is free to download but not freely licensed, the controlled dictionary
cannot be redistributed, and ASD states that it does not endorse or
certify sellers of tools claimed to be fully compliant.
Vocabulary checking is therefore out of scope. Rules that depend on the approved-word list are not adopted and cannot be.
STE applies to some text in this repository and would damage the rest. Get this wrong and the 20-word cap starts deleting the reasoning that docstrings and ADRs exist to carry.
| Apply STE | Do not apply STE |
|---|---|
| Runbook and installation steps | Docstrings that explain why |
| Agent replies to the operator | ADRs and design rationale |
| Error messages and warnings | Book content and blog output |
| Command and skill instructions | Commit message bodies |
| Checklists | This repository's own prose docs |
The last row is the one that bites. These skill files are descriptive
repo prose, so the house rules govern them, not STE. Full reasoning and
worked before-and-after pairs: modules/scope-boundaries.md.
Four limits, corroborated across independent public restatements:
| Limit | Value |
|---|---|
| Procedural sentence | 20 words |
| Descriptive sentence | 25 words |
| Sentences per paragraph | 6 |
| Words in a noun cluster | 3 |
Plus: one instruction per sentence, active voice in procedures, simple
tenses only, no contractions, no semicolons, and American spelling.
Each restated in our own words in modules/adopted-rules.md, with the
rules deliberately not adopted and why.
Three checks need counting or noun detection, so they are code:
cd plugins/scribe && PYTHONPATH=src uv run python -m scribe.ste FILE.mdEach finding prints as file:line: [rule/confidence] detail. The
command exits 0 whenever it could read the files, because these checks
are advisory and the noun-cluster rule must never gate a merge. Pass
--no-noun-clusters to see only the two counting rules, which is the
usual way to read a file that has never been checked before.
Four more are regex and live in the language pack, gated off so a routine slop sweep never runs them:
cd plugins/scribe && uv run python -c "
import sys; sys.path.insert(0, 'src')
from scribe.pattern_loader import get_ste_patterns, load_language_patterns
for e in get_ste_patterns(load_language_patterns('en'), include_optional=True):
print(e['category'], e['confidence'], len(e['patterns']), 'patterns')
"Mask code, tables, and frontmatter before you run the regex set. The
scribe.ste checks already do this.
Measured across 5984 markdown files in this repository:
| Check | Files affected | Per file |
|---|---|---|
sentence_length | 39% | 0.8 |
paragraph_length | 1% | 0.0 |
noun_cluster | 76% | 3.0 |
A noun-cluster finding is advisory. Detection subtracts function words and verb forms and calls what is left a noun, which a real part-of-speech tagger would do better. Reread the phrase it points at. Do not rewrite on it, and never gate a merge on it.
Each finding prints its own confidence, and the three rules earn it differently.
| Confidence | Where it appears |
|---|---|
high | Every paragraph finding, and any sentence over 25 words |
medium | A sentence of 21 to 25 words whose register was inferred |
low | Every noun-cluster finding |
Past 25 words a sentence is over both limits, so the count settles it
and the register does not matter. Between 21 and 25 words the finding
exists only because the sentence was read as procedural, and when that
reading came through a stripped label it is published as medium.
Across the corpus 11% of sentence findings are medium.
A label is stripped because list items here open with **Label**:, and
classifying on the label leaves most of them unreadable. The cost is
that the sentence's real opening is discarded. Triggers: push to master then reads as an instruction to push rather than a description
of when a workflow fires. Nothing in the body separates it from Merge to master, which is a real instruction, so the evidence has to be the
label, and the label is kept for that purpose.
One label shape is evidence and the rest are not. A one-word plural
label names a set, so the words after it are that set's members and the
first of them is a noun whatever the verb lexicon says. A procedural
reading is withdrawn when it arrived through such a label. Fix: and
Action: name one thing and are followed by a real instruction often
enough to prove nothing, so they keep their reading. Across the corpus
215 sentences carry a plural label, and one of them sits in the band
where the register decides whether it reports.
For every other label the reading is right about five times in six, so
the class is kept and the doubt is published with it. Read a medium
finding before you act on it.
One limit worth knowing before you trust a clean run: 61% of sentences cannot be classified as procedural or descriptive, and those get the looser 25-word limit. The checker under-reports rather than over-reports. A clean run is weaker evidence than a dirty one.
That number stays high because most sentences open with a noun, and no word list reaches them. Across the corpus the unclassified sentences begin with 9407 distinct words, of which the commonest 60 cover 30%. Reclassifying them would also change almost nothing, because unknown text already receives the descriptive limit. Only unknown text that is really procedural is under-reported, and that was measured at about 20 findings across the whole repository.
python -m scribe.ste runs over the target file and every line
it prints is read. The command exits 0 either way, so the exit
state carries no information.sentence_length finding is fixed or has a stated reason
to stand.noun_cluster finding was auto-rewritten.© athola, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 4 other files in plugins/scribe/skills/simplified-technical-english of athola/claude-night-market.
Open the folder on GitHubat commit 9f3eb00
Simplified Technical English next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Simplified Technical English this skillathola/claude-night-market | 341 | — | ~2k | Automated safety check: Pass | MIT | |
| Technical Writingrsmdt/the-startup | 560 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Technical Documentationkid-sid/claude-spellbook | 190 | — | ~3.4k | Automated safety check: Notes | MIT | |
| Evidence-Backed Documentation Writerbgauryy/octocode | 949 | — | ~2k | Automated safety check: Pass | MIT | |
| Technical Documentation Templatesbybren-llc/safe-agentic-workflow | 423 | — | ~1.2k | Automated safety check: Pass | MIT | |
| Obsidian WriterAtmosphere/atmosphere | 3.8k | — | ~2.6k | Automated safety check: Pass | Apache-2.0 |
rsmdt/the-startup
Create architectural decision records (ADRs), system documentation, API documentation, and operational runbooks.
kid-sid/claude-spellbook
A skill your agent uses when writing a README, documenting an API with OpenAPI, drafting a runbook for on-call engineers, authoring a technical spec or ADR, or setting up docs-as-code with…
bgauryy/octocode
Writes, repairs and copyedits project docs against the Google developer documentation style guide, verifying claims in the repository before stating them.
bybren-llc/safe-agentic-workflow
Documentation templates for ADRs, runbooks, architecture docs, and knowledge transfer documents. Use when creating Architecture Decision Records, writing…
Atmosphere/atmosphere
Write well-formatted notes to the atmosphere-vault Obsidian knowledge base.
avibebuilder/claude-prime
A skill your agent uses when the user wants to save knowledge as a file so others don't have to rediscover it — "turn this into a doc", "write this up", "document how X works", "we figured this out…
athola/claude-night-market
Run and interpret repo diagnostic scripts (ratchets, validators, token stats).
athola/claude-night-market
Evaluate Claude skill quality through auditing. An agent skill from athola/claude-night-market.
athola/claude-night-market
Coordinates Claude agent teams via filesystem protocol. An agent skill from athola/claude-night-market.
athola/claude-night-market
Delegates execution to eight CLIs (Gemini, Qwen, MiniMax, GLM, Muse, Codex, OpenCode, Glimmer).
athola/claude-night-market
Guide minimal code via a decision ladder with full safety, edge, and negative-case coverage.
athola/claude-night-market
Build a project skill library in .claude/skills/ via discovery, parallel authoring, and review.
Categories
Applies an ASD-STE100-derived register to operator and procedural text. Simplified Technical English is an agent skill from athola/claude-night-market. Applies an ASD-STE100-derived register to operator and procedural text.
Simplified Technical English fits situations like: writing runbooks; tasks that involve Architecture decision records; tasks that involve Technical documentation.
Run `npx skills add athola/claude-night-market --skill simplified-technical-english -a claude-code`. Or copy the skill folder (plugins/scribe/skills/simplified-technical-english in athola/claude-night-market) into .claude/skills/simplified-technical-english in your project. Claude Code loads it when a task matches its description.
Run `npx skills add athola/claude-night-market --skill simplified-technical-english -a codex`. Or copy the skill folder (plugins/scribe/skills/simplified-technical-english in athola/claude-night-market) into .agents/skills/simplified-technical-english in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add athola/claude-night-market --skill simplified-technical-english -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/simplified-technical-english, .gemini/skills/simplified-technical-english, .github/skills/simplified-technical-english and .opencode/skills/simplified-technical-english in your project.
Going by SKILL.md and its folder, Simplified Technical English needs the command-line tools its instructions call (uv and python). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Simplified Technical English is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Simplified Technical English: Technical Writing (rsmdt/the-startup, 560 stars), Technical Documentation (kid-sid/claude-spellbook, 190 stars), Evidence-Backed Documentation Writer (bgauryy/octocode, 949 stars) and Technical Documentation Templates (bybren-llc/safe-agentic-workflow, 423 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
athola (a GitHub user) maintains it in athola/claude-night-market, which has 341 GitHub stars. The repository holds 152 skills in this directory. The repository was last updated on October 9, 2026.
Source: athola/claude-night-market on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.