agentleFS
yamcodesyamcodes/arkenv/skills/docs-writer/SKILL.md

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
  1. Distinctive:

    Clarity: Use simple vocabulary. Avoid jargon, slang, and marketing hype.

    line 39
  2. Distinctive:

    Global Audience: Write in standard US English.

    line 40
  3. Distinctive:

    Word Choice: Avoid "please" and anthropomorphism (e.g., "the server thinks").

    line 44
  4. Distinctive:

    Write precisely to ensure your instructions are unambiguous.

    line 48
  5. Distinctive:

    Abbreviations: Avoid Latin abbreviations.

    line 50
  6. Distinctive:

    Punctuation: Use the serial comma. Place periods and commas inside quotation marks.

    line 52
  7. Distinctive:

    Dates: Use unambiguous formats (e.g., "January 22, 2026").

    line 54
  8. Distinctive:

    Conciseness: Use "lets you" instead of "allows you to." Use precise, specific verbs.

    line 55
  9. Distinctive:

    Examples: Use meaningful names in examples.

    line 57
  10. Distinctive:

    Overview paragraphs: Every heading must be followed by at least one introductory overview paragraph before any lists or sub-headings.

    line 68
  11. Distinctive:

    Casing: Use sentence case for headings, titles, and bolded text.

    line 71
  12. Very specific:

    Naming: Always refer to the project as ArkEnv (never the ArkEnv).

    line 72
  13. Distinctive:

    Lists: Use numbered lists for sequential steps and bulleted lists otherwise.

    line 74
  14. Very specific:

    UI and code: Use bold for UI elements and code font for filenames, snippets, commands, and API elements.

    line 76
  15. Distinctive:

    Accessibility: Use semantic HTML elements correctly (headings, lists, tables).

    line 79
  16. Distinctive:

    Media: Use lowercase hyphenated filenames.

    line 81
  17. Very specific:

    Details section: Use the <details> tag to create a collapsible section.

    line 83
  18. Very specific:

    Callouts: Use GitHub-flavored markdown alerts to highlight important information.

    line 97
  19. Distinctive:

    Accessibility: Use descriptive anchor text.

    line 121
  20. Very specific:

    Use relative links in docs: Use relative links in documentation (/docs/) to ensure portability.

    line 123
  21. Distinctive:

    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 …

    line 128
  22. Distinctive:

    BLUF: Start with an introduction explaining what to expect.

    line 133
  23. Distinctive:

    Experimental features: If a feature is clearly noted as experimental, add the following note immediately after the introductory paragraph:

    line 134
  24. Distinctive:

    Headings: Use hierarchical headings to support the user journey.

    line 142
  25. Distinctive:

    Start each step with an imperative verb.

    line 145
  26. Distinctive:

    Put conditions before instructions (e.g., "On the Settings page, click...").

    line 147
  27. Distinctive:

    Elements: Use bullet lists, tables, details, and callouts.

    line 150
  28. Distinctive:

    Avoid using a table of contents: If a table of contents is present, remove it.

    line 151
  29. Distinctive:

    Before modifying any documentation, thoroughly investigate the request and the surrounding context.

    line 156
  30. Very specific:

    Audit: Read the latest versions of relevant files in docs/.

    line 164
  31. Distinctive:

    Plan: Create a step-by-step plan before making changes.

    line 167
  32. Distinctive:

    Audit Docset: If asked to audit the documentation, follow the procedural guide in docs-auditing.md.

    line 168
  33. Distinctive:

    Follow these additional steps when asked to review or update existing documentation.

    line 177
  34. Distinctive:

    Headers: If you change a header, you must check for links that lead to that header and update them.

    line 184
  35. Distinctive:

    Tone: Ensure the tone is active and engaging.

    line 186
  36. Distinctive:

    Consistency: Check for consistent terminology and style across all edited documents.

    line 189
  37. Distinctive:

    Accuracy: Ensure content accurately reflects the implementation and technical behavior.

    line 196
  38. Distinctive:

    Link check: Verify all new and existing links leading to or from modified pages.

    line 199
  39. Very specific:

    Format: If npm run format fails, it may be necessary to run npm install first to ensure all formatting dependencies are available.

    line 202

“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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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.md resource 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 (never the 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 font for 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 are NOTE, TIP, IMPORTANT, WARNING, and CAUTION.

    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/ from docs/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 .mdx file.)

  • 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.

  1. 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.
  2. Investigate: Examine relevant code (primarily in packages/) for accuracy.
  3. Audit: Read the latest versions of relevant files in docs/.
  4. Connect: Identify all referencing pages if changing behavior. Check if docs/sidebar.json needs updates.
  5. Plan: Create a step-by-step plan before making changes.
  6. 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.

  1. Accuracy: Ensure content accurately reflects the implementation and technical behavior.
  2. Self-review: Re-read changes for formatting, correctness, and flow.
  3. 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.
  4. Format: If npm run format fails, it may be necessary to run npm install first to ensure all formatting dependencies are available. Once all changes are complete, ask to execute npm run format to 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).

Download now (ZIP)

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.