docs-writer
Skill147 starsChanged 23 days agoMITView on GitHub
For ArkEnv register (what/why/how, Turbo-shaped docs, house terms), follow the-voice. This skill is mechanics: links, wrapping, structure. Ignore Gemini CLI naming. When tone and this file conflict, the-voice wins. Site notes use fumadocs <Callout>, not GitHub alerts. As an expert technical writer and editor, you produce accurate, clear, and consistent documentation. When asked to write, edit, or review documentation, you must ensure the content strictly adheres to the provided documentation standards and accurately reflects the current codebase. Adhere to the…
We split this skill into the rules it gives an agent
39 rules. 0 are common, 32 are distinctive, and 7 are very specific to this project.
0
Common
Most of the 26 edited versions we read keep these.
32
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 39
Clarity: Use simple vocabulary. Avoid jargon, slang, and marketing hype.
- Distinctive: line 40
Global Audience: Write in standard US English.
- Distinctive: line 44
Word Choice: Avoid "please" and anthropomorphism (e.g., "the server thinks").
- Distinctive: line 48
Write precisely to ensure your instructions are unambiguous.
- Distinctive: line 50
Abbreviations: Avoid Latin abbreviations.
- Distinctive: line 52
Punctuation: Use the serial comma. Place periods and commas inside quotation marks.
- Distinctive: line 54
Dates: Use unambiguous formats (e.g., "January 22, 2026").
- Distinctive: line 55
Conciseness: Use "lets you" instead of "allows you to." Use precise, specific verbs.
- Distinctive: line 57
Examples: Use meaningful names in examples.
- Distinctive: line 68
Overview paragraphs: Every heading must be followed by at least one introductory overview paragraph before any lists or sub-headings.
- Distinctive: line 71
Casing: Use sentence case for headings, titles, and bolded text.
- Very specific: line 72
Naming: Always refer to the project as ArkEnv (never the ArkEnv).
- Distinctive: line 74
Lists: Use numbered lists for sequential steps and bulleted lists otherwise.
- Very specific: line 76
UI and code: Use bold for UI elements and code font for filenames, snippets, commands, and API elements.
- Distinctive: line 79
Accessibility: Use semantic HTML elements correctly (headings, lists, tables).
- Distinctive: line 81
Media: Use lowercase hyphenated filenames.
- Very specific: line 83
Details section: Use the <details> tag to create a collapsible section.
- Very specific: line 97
Callouts: Use GitHub-flavored markdown alerts to highlight important information.
- Distinctive: line 121
Accessibility: Use descriptive anchor text.
- Very specific: line 123
Use relative links in docs: Use relative links in documentation (/docs/) to ensure portability.
- Distinctive: line 128
When changing headings, check for deep links: If a user is changing a heading, check for deep links to that heading in other pages and …
- Distinctive: line 133
BLUF: Start with an introduction explaining what to expect.
- Distinctive: line 134
Experimental features: If a feature is clearly noted as experimental, add the following note immediately after the introductory paragraph:
- Distinctive: line 142
Headings: Use hierarchical headings to support the user journey.
- Distinctive: line 145
Start each step with an imperative verb.
- Distinctive: line 147
Put conditions before instructions (e.g., "On the Settings page, click...").
- Distinctive: line 150
Elements: Use bullet lists, tables, details, and callouts.
- Distinctive: line 151
Avoid using a table of contents: If a table of contents is present, remove it.
- Distinctive: line 156
Before modifying any documentation, thoroughly investigate the request and the surrounding context.
- Very specific: line 164
Audit: Read the latest versions of relevant files in docs/.
- Distinctive: line 167
Plan: Create a step-by-step plan before making changes.
- Distinctive: line 168
Audit Docset: If asked to audit the documentation, follow the procedural guide in docs-auditing.md.
- Distinctive: line 177
Follow these additional steps when asked to review or update existing documentation.
- Distinctive: line 184
Headers: If you change a header, you must check for links that lead to that header and update them.
- Distinctive: line 186
Tone: Ensure the tone is active and engaging.
- Distinctive: line 189
Consistency: Check for consistent terminology and style across all edited documents.
- Distinctive: line 196
Accuracy: Ensure content accurately reflects the implementation and technical behavior.
- Distinctive: line 199
Link check: Verify all new and existing links leading to or from modified pages.
- Very specific: line 202
Format: If npm run format fails, it may be necessary to run npm install first to ensure all formatting dependencies are available.
“Common” is measured: kept by at least 6 in 10 of the 26 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
docs-writer skill instructions
For ArkEnv register (what/why/how, Turbo-shaped docs, house terms),
follow the-voice. This skill is mechanics: links, wrapping,
structure. Ignore Gemini CLI naming. When tone and this file conflict,
the-voice wins. Site notes use fumadocs <Callout>, not GitHub alerts.
As an expert technical writer and editor, you produce accurate, clear, and
consistent documentation. When asked to write, edit, or review
documentation, you must ensure the content strictly adheres to the
provided documentation standards and accurately reflects the current
codebase. Adhere to the contribution process in CONTRIBUTING.md and the
following project standards.
Phase 1: Documentation standards
Adhering to these principles and standards when writing, editing, and reviewing.
Voice and tone
Adopt a tone that balances professionalism with a helpful, conversational approach.
- Perspective and tense: Address the reader as "you." Use active voice and present tense (e.g., "The API returns...").
- Tone: Professional, friendly, and direct.
- Clarity: Use simple vocabulary. Avoid jargon, slang, and marketing hype.
- Global Audience: Write in standard US English. Avoid idioms and cultural references.
- Requirements: Be clear about requirements ("must") vs. recommendations ("we recommend"). Avoid "should."
- Word Choice: Avoid "please" and anthropomorphism (e.g., "the server thinks"). Use contractions (don't, it's).
Language and grammar
Write precisely to ensure your instructions are unambiguous.
- Abbreviations: Avoid Latin abbreviations; use "for example" (not "e.g.") and "that is" (not "i.e.").
- Punctuation: Use the serial comma. Place periods and commas inside quotation marks.
- Dates: Use unambiguous formats (e.g., "January 22, 2026").
- Conciseness: Use "lets you" instead of "allows you to." Use precise, specific verbs.
- Examples: Use meaningful names in examples; avoid placeholders like "foo" or "bar."
- Quota and limit terminology: For any content involving resource capacity
or using the word "quota" or "limit", strictly adhere to the guidelines in
the
quota-limit-style-guide.mdresource file. Generally, Use "quota" for the administrative bucket and "limit" for the numerical ceiling.
Formatting and syntax
Apply consistent formatting to make documentation visually organized and accessible.
- Overview paragraphs: Every heading must be followed by at least one introductory overview paragraph before any lists or sub-headings.
- Text wrap: Wrap text at 80 characters (except long links or tables).
- Casing: Use sentence case for headings, titles, and bolded text.
- Naming: Always refer to the project as
ArkEnv(neverthe ArkEnv). - Lists: Use numbered lists for sequential steps and bulleted lists otherwise. Keep list items parallel in structure.
- UI and code: Use bold for UI elements and
code fontfor filenames, snippets, commands, and API elements. Focus on the task when discussing interaction. - Accessibility: Use semantic HTML elements correctly (headings, lists, tables).
- Media: Use lowercase hyphenated filenames. Provide descriptive alt text for all images.
Details section: Use the
<details>tag to create a collapsible section. This is useful for supplementary or data-heavy information that isn't critical to the main flow.Example:
<details> <summary>Title</summary>- First entry
- Second entry
</details>Callouts: Use GitHub-flavored markdown alerts to highlight important information. To ensure the formatting is preserved by
npm run format, place an empty line, then a prettier ignore comment directly before the callout block. Use<!-- prettier-ignore -->for standard Markdown files (.md) and{/* prettier-ignore */}for MDX files (.mdx). The callout type ([!TYPE]) should be on the first line, followed by a newline, and then the content, with each subsequent line of content starting with>. Available types areNOTE,TIP,IMPORTANT,WARNING, andCAUTION.Example (.md):
<!-- prettier-ignore -->[!NOTE] This is an example of a multi-line note that will be preserved by Prettier.
Example (.mdx):
{/* prettier-ignore */}
[!NOTE] This is an example of a multi-line note that will be preserved by Prettier.
Links
- Accessibility: Use descriptive anchor text; avoid "click here." Ensure the link makes sense out of context, such as when being read by a screen reader.
- Use relative links in docs: Use relative links in documentation (
/docs/) to ensure portability. Use paths relative to the current file's directory (for example,../tools/fromdocs/cli/). Do not include the/docs/section of a path, but do verify that the resulting relative link exists. This does not apply to meta files such as README.MD and CONTRIBUTING.MD. - When changing headings, check for deep links: If a user is changing a heading, check for deep links to that heading in other pages and update accordingly.
Structure
- BLUF: Start with an introduction explaining what to expect.
- Experimental features: If a feature is clearly noted as experimental, add the following note immediately after the introductory paragraph:
<!-- prettier-ignore -->[!NOTE] This is an experimental feature currently under active development. (Note: Use
{/* prettier-ignore */}if editing an.mdxfile.)
- Headings: Use hierarchical headings to support the user journey.
- Procedures:
- Introduce lists of steps with a complete sentence.
- Start each step with an imperative verb.
- Number sequential steps; use bullets for non-sequential lists.
- Put conditions before instructions (e.g., "On the Settings page, click...").
- Provide clear context for where the action takes place.
- Indicate optional steps clearly (e.g., "Optional: ...").
- Elements: Use bullet lists, tables, details, and callouts.
- Avoid using a table of contents: If a table of contents is present, remove it.
- Next steps: Conclude with a "Next steps" section if applicable.
Phase 2: Preparation
Before modifying any documentation, thoroughly investigate the request and the surrounding context.
- Clarify: Understand the core request. Differentiate between writing new content and editing existing content. If the request is ambiguous (e.g., "fix the docs"), ask for clarification.
- Investigate: Examine relevant code (primarily in
packages/) for accuracy. - Audit: Read the latest versions of relevant files in
docs/. - Connect: Identify all referencing pages if changing behavior. Check if
docs/sidebar.jsonneeds updates. - Plan: Create a step-by-step plan before making changes.
- Audit Docset: If asked to audit the documentation, follow the procedural guide in docs-auditing.md.
Phase 3: Execution
Implement your plan by either updating existing files or creating new ones
using the appropriate file system tools. Use replace for small edits and
write_file for new files or large rewrites.
Editing existing documentation
Follow these additional steps when asked to review or update existing documentation.
- Gaps: Identify areas where the documentation is incomplete or no longer reflects existing code.
- Structure: Apply "Structure (New Docs)" rules (BLUF, headings, etc.) when adding new sections to existing pages.
- Headers: If you change a header, you must check for links that lead to that header and update them.
- Tone: Ensure the tone is active and engaging. Use "you" and contractions.
- Clarity: Correct awkward wording, spelling, and grammar. Rephrase sentences to make them easier for users to understand.
- Consistency: Check for consistent terminology and style across all edited documents.
Phase 4: Verification and finalization
Perform a final quality check to ensure that all changes are correctly formatted and that all links are functional.
- Accuracy: Ensure content accurately reflects the implementation and technical behavior.
- Self-review: Re-read changes for formatting, correctness, and flow.
- Link check: Verify all new and existing links leading to or from modified pages. If you changed a header, ensure that any links that lead to it are updated.
- Format: If
npm run formatfails, it may be necessary to runnpm installfirst to ensure all formatting dependencies are available. Once all changes are complete, ask to executenpm run formatto ensure consistent formatting across the project. If the user confirms, execute the command.
Credits
This skill was originally created for the Gemini CLI
project and sourced from
github.com/google-gemini/gemini-cli
(.gemini/skills/docs-writer).
Other versions28 projects use a version of this.
Word for word · 0
None found.
Edited · 3
- google-gemini/gemini-cli★ 109k98% same
- caobingsheng/skills★ 195% same
- liuning0820/skills★ 086% same
Wrote their own version · 25
- maximhq/bifrost★ 9.3ksame name
- strands-agents/sdk-python★ 9ksame name
- strands-agents/harness-sdk★ 8.9ksame name
- Devolutions/IronRDP★ 3.3ksame name
- prisma/docs★ 1.1ksame name
- prisma/web★ 1.1ksame name
- event-driven-io/emmett★ 550same name
- strands-agents/box★ 490same name
- Cosmian/kms★ 362same name
- delorenj/skills★ 18same name
15 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use docs-planner, docs-reviewer and 2 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
strands-agentsSkilldocs-planner
Find the gaps in the Box documentation and produce a prioritized backlog for docs/user/ and docs/design/. Use when planning documentation work, after a feature or a binary ships without a page, for a periodic health check of the docs, or when asked "what docs need writing", "plan the docs work", "prioritize the docs backlog", or "what should we document next".
Also in 3 projects that use this
strands-agentsSkilldocs-reviewer
Review a Box documentation draft in docs/user/ or docs/design/ for placement, structure, altitude, readability, terminology, and claim scope, and give a verdict (Ship it, Tighten, or Rethink). Use after docs-writer produces a draft, before a docs pull request, or when asked to "review this draft", "check my docs", or "is this page ready to ship". Read-only.
Also in 3 projects that use this
hiroppySkilldocs-audit
Audit docs/ design documents, specs, and implementation plans against current source code for drift. Outputs a drift report and updates documents. Triggers on "check if docs are up to date", "diff docs vs code", "update design docs", "docs consistency check", "verify specs match source", "check plan completion status". Most effective after code or documentation changes.
Also in 3 projects that use this
SentrySkillsecurity-review
Finds exploitable application security vulnerabilities in code changes. Use for Warden security scans, appsec review, OWASP-style checks, authentication or authorization bugs, injection, XSS, SSRF, path traversal, secrets, unsafe crypto, webhook verification, open redirects, or sensitive data exposure.
Also in 4 projects that use this
In this repository40 other files it gives its agents.
- .agents/AGENTS.mdAGENTS.md
- AGENTS.mdAGENTS.md
- skills/typescript/AGENTS.mdAGENTS.md
- .agents/platforms/copilot-instructions.mdCopilot instructions
- arkenvSkill
- bulletproof-reactSkill
- changesetSkill
- code-reviewSkill
- create-skillSkill
- diagnoseSkill
- excalidrawSkill
- forward-portSkill
- gh-cliSkill
- grill-meSkill
- grill-with-docsSkill
- groom-issueSkill
- hallmarkSkill
- hexagonal-architectureSkill
- improve-codebase-architectureSkill
- internalize-skillSkill
- jsdocSkill
- modularizeSkill
- next-best-practicesSkill
- nuxtSkill
- pnpmSkill
- point-latest-at-rcSkill
- rename-skillSkill
- setup-matt-pocock-skillsSkill
- sync-mainSkill
- tackle-issueSkill
- tddSkill
- the-hatSkill
- the-voiceSkill
- to-prdSkill
- triageSkill
- turborepoSkill
- typescriptSkill
- write-a-skillSkill
- write-issueSkill
- zoom-outSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

