docs-writer

Viết và biên tập kỹ thuật cho tài liệu Gemini CLI với sự tuân thủ nghiêm ngặt về phong cách. Áp dụng các tiêu chuẩn tài liệu toàn diện về giọng văn, sắc thái, ngữ pháp, định dạng và cấu trúc để đảm bảo tính nhất quán trên tất cả các tệp .md và nội dung trong thư mục /docs. Yêu cầu điều tra mã nguồn và tài liệu hiện có liên quan trước khi thực hiện thay đổi, kèm theo kiểm tra các trang bị ảnh hưởng và cập nhật điều hướng thanh bên. Áp dụng các quy tắc cụ thể cho tiêu đề, danh sách, quy trình, liên kết và khả năng tiếp cận,...

npx skills add https://github.com/google-gemini/gemini-cli --skill docs-writer

docs-writer skill instructions

As an expert technical writer and editor for the Gemini CLI project, 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 Gemini CLI (never the Gemini CLI).

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

    Title
    • First entry
    • Second entry
  • 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):

[!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:

[!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.

Thêm skills từ google-gemini

agent-tui
google-gemini
Main Agents: Do NOT use this skill directly. If you need to test the TUI, invoke the `tui_tester` subagent. Drive terminal UI (TUI) applications…
gemini-api-cli
google-gemini
Hướng dẫn sử dụng công cụ CLI Gemini API. Sử dụng khi bạn cần tương tác với Gemini API qua dòng lệnh, quản lý tác nhân hoặc tạo phương tiện (hình ảnh,…)
behavioral-evals
google-gemini
Hướng dẫn tạo, chạy, sửa lỗi và thúc đẩy các đánh giá hành vi. Sử dụng khi xác minh logic quyết định của tác nhân, gỡ lỗi lỗi, gỡ lỗi prompt…
gemini-live-api-dev
google-gemini
Truyền phát hai chiều thời gian thực với Gemini qua WebSockets cho các cuộc hội thoại âm thanh, video và văn bản. Hỗ trợ đầu vào/đầu ra âm thanh (PCM 16 kHz), khung hình video, văn bản và phiên âm tự động với phát hiện hoạt động giọng nói để xử lý ngắt quãng. Bao gồm các tính năng âm thanh gốc: hội thoại cảm xúc, âm thanh chủ động và chế độ suy nghĩ; gọi hàm để sử dụng công cụ đồng bộ và không đồng bộ; và truy vấn Google Search. Cung cấp quản lý phiên với nén ngữ cảnh, tiếp tục và...
gemini-omni-flash-api
google-gemini
Sử dụng kỹ năng này để chỉnh sửa video tạo sinh, chuyển văn bản thành video, tạo video tham chiếu hình ảnh và hoạt ảnh chuyển tiếp từ khung hình đầu tiên sang video bằng…
gemini-api-dev
google-gemini
Xây dựng ứng dụng với các mô hình Gemini của Google, hỗ trợ nội dung đa phương thức, gọi hàm và đầu ra có cấu trúc trên Python, JavaScript, Go và Java. Truy cập các mô hình Gemini 3 hiện tại (Pro, Flash, Pro Image) với ngữ cảnh 1 triệu token; các mô hình Gemini 2.x và 1.5 cũ đã ngừng hỗ trợ. Hỗ trợ tạo văn bản, hiểu hình ảnh/âm thanh/video, gọi hàm, đầu ra JSON có cấu trúc, thực thi mã, lưu trữ ngữ cảnh và nhúng. Các SDK chính thức có sẵn: google-genai (Python),...
gemini-interactions-api
google-gemini
Giao diện thống nhất cho các mô hình và tác nhân Gemini với trạng thái phía máy chủ, phát trực tuyến và điều phối công cụ. Hỗ trợ nhiều mô hình hiện tại (gemini-3-flash-preview, gemini-3-pro-preview, gemini-2.5-flash/pro) và tác nhân Deep Research; tự động thay thế các ID mô hình đã lỗi thời bằng các lựa chọn thay thế hiện tại. Giảm tải lịch sử hội thoại lên máy chủ qua previous_interaction_id cho các tương tác đa lượt có trạng thái mà không cần quản lý lịch sử thủ công. Điều phối công cụ tích hợp bao gồm...
deliver
google-gemini
Đăng phiên bản tóm tắt của bản briefing tới một webhook đến của Google Chat hoặc Slack, để bản chạy hàng ngày tự giao — bỏ qua một cách im lặng khi không có webhook nào…