Gen Docs
Overview
This repository maintains bilingual user documentation under docs/. docs/en/ and docs/zh/ are mirrored pairs for most pages; update both in the same change. Changelog is the exception — English is the source, and Chinese is translated from English.
Use this skill to update the corresponding documentation whenever the codebase has changes that affect product behavior or user experience.
For a full pre-release audit of all pages (detecting hallucinations and coverage gaps), use the audit-docs skill instead.
Prerequisites
This skill depends on the following being in place. If any are missing, stop and report to the user before continuing:
docs/ directory with docs/zh/, docs/en/, and docs/.vitepress/config.ts set up (VitePress site).
docs/AGENTS.md style guide — defines source-of-truth rules, terminology table, typography, and writing style.
docs/scripts/sync-changelog.mjs — auto-syncs root CHANGELOG.md to docs/en/release-notes/changelog.md.
translate-docs skill in .agents/skills/ — handles bilingual synchronization.
Workflow
Inspect changes
git log main..HEAD --oneline — commits on the current branch
git diff main..HEAD --stat — file-level scope
ls .changeset/*.md (excluding README.md) — pending changeset entries
- Read
CHANGELOG.md and any subpackage packages/*/CHANGELOG.md for already-recorded entries.
Understand user-facing impact
For each change, read the actual implementation when needed; do not infer behavior from commit messages or PR titles alone. Skip:
- Internal refactors with no externally visible behavior change
- Tests, CI, type-only changes
- Tooling / build-system changes that do not change how users invoke the CLI
If after the scan you conclude there is no user-facing impact, say so and stop.
Sync English changelog
Run:
node docs/scripts/sync-changelog.mjs
This updates docs/en/release-notes/changelog.md from the root CHANGELOG.md. Never edit the docs changelog by hand.
Update user docs
Following the rules in docs/AGENTS.md, edit the affected pages in whichever locale you are working in, then sync the mirror. Match terminology with the term table in docs/AGENTS.md and the existing wording in surrounding pages.
Cover all relevant sections:
- Guides (getting-started, use cases, interaction, sessions, IDE integration)
- Customization (skills, agents, MCP, hooks, plugins, etc.)
- Configuration (config files, env vars, providers, data locations)
- Reference (CLI subcommands, slash commands, keyboard shortcuts)
- Release notes (
docs/zh/release-notes/breaking-changes.md if a breaking change is involved)
Sync bilingual content
Invoke the translate-docs skill. It will:
- Sync updated non-changelog pages between
docs/en/ and docs/zh/
- Translate the English changelog → Chinese under
docs/zh/release-notes/changelog.md
Rules and conventions
- Locale sync: Non-changelog pages stay mirrored between
docs/en/ and docs/zh/. Changelog flows English → Chinese.
- Terminology: Use the term table in
docs/AGENTS.md exactly. Do not invent new translations or use synonyms.
- Scope discipline: Only update sections affected by the recent changes. Do not opportunistically rewrite unrelated docs.
- Public examples: Never write real internal endpoints, key names, account names, or service names into docs. Use neutral placeholders such as
https://api.example.com/v1, https://registry.example.com/v1/models/api.json, example.test, and YOUR_API_KEY.
- Breaking changes: If any change is breaking, also update
docs/en/release-notes/breaking-changes.md (under ## Unreleased) with **Affected** + **Migration** subsections, and mirror it in docs/zh/release-notes/breaking-changes.md.
- Do not edit auto-synced files:
docs/en/release-notes/changelog.md is regenerated by the sync script; any manual edit will be overwritten.
Common mistakes
- Describing what code changed instead of what the user can now do (or can no longer do).
- Adding a new section heading per feature instead of weaving the change into existing prose.
- Updating only one locale and leaving its mirror stale.
- Editing only the mirror to fix wording that should be corrected in the locale you changed first.
- Inventing new terminology that drifts from the
docs/AGENTS.md term table.
- Using real internal values in examples instead of neutral
example placeholders.
1---2name: gen-docs3description: Update Kimi Code CLI user documentation after meaningful code changes that affect product behavior or user experience.4---56# Gen Docs78## Overview910This repository maintains bilingual user documentation under `docs/`. `docs/en/` and `docs/zh/` are mirrored pairs for most pages; update both in the same change. **Changelog is the exception** — English is the source, and Chinese is translated from English.1112Use this skill to update the corresponding documentation whenever the codebase has changes that affect product behavior or user experience.1314For a **full pre-release audit** of all pages (detecting hallucinations and coverage gaps), use the `audit-docs` skill instead.1516## Prerequisites1718This skill depends on the following being in place. If any are missing, stop and report to the user before continuing:1920- `docs/` directory with `docs/zh/`, `docs/en/`, and `docs/.vitepress/config.ts` set up (VitePress site).21- `docs/AGENTS.md` style guide — defines source-of-truth rules, terminology table, typography, and writing style.22- `docs/scripts/sync-changelog.mjs` — auto-syncs root `CHANGELOG.md` to `docs/en/release-notes/changelog.md`.23- `translate-docs` skill in `.agents/skills/` — handles bilingual synchronization.2425## Workflow26271. **Inspect changes**2829 - `git log main..HEAD --oneline` — commits on the current branch30 - `git diff main..HEAD --stat` — file-level scope31 - `ls .changeset/*.md` (excluding `README.md`) — pending changeset entries32 - Read `CHANGELOG.md` and any subpackage `packages/*/CHANGELOG.md` for already-recorded entries.33342. **Understand user-facing impact**3536 For each change, read the actual implementation when needed; **do not infer behavior from commit messages or PR titles alone**. Skip:3738 - Internal refactors with no externally visible behavior change39 - Tests, CI, type-only changes40 - Tooling / build-system changes that do not change how users invoke the CLI4142 If after the scan you conclude there is no user-facing impact, say so and stop.43443. **Sync English changelog**4546 Run:4748 ```bash49 node docs/scripts/sync-changelog.mjs50 ```5152 This updates `docs/en/release-notes/changelog.md` from the root `CHANGELOG.md`. Never edit the docs changelog by hand.53544. **Update user docs**5556 Following the rules in `docs/AGENTS.md`, edit the affected pages in whichever locale you are working in, then sync the mirror. Match terminology with the term table in `docs/AGENTS.md` and the existing wording in surrounding pages.5758 Cover all relevant sections:5960 - Guides (getting-started, use cases, interaction, sessions, IDE integration)61 - Customization (skills, agents, MCP, hooks, plugins, etc.)62 - Configuration (config files, env vars, providers, data locations)63 - Reference (CLI subcommands, slash commands, keyboard shortcuts)64 - Release notes (`docs/zh/release-notes/breaking-changes.md` if a breaking change is involved)65665. **Sync bilingual content**6768 Invoke the `translate-docs` skill. It will:6970 - Sync updated non-changelog pages between `docs/en/` and `docs/zh/`71 - Translate the English changelog → Chinese under `docs/zh/release-notes/changelog.md`7273## Rules and conventions7475- **Locale sync**: Non-changelog pages stay mirrored between `docs/en/` and `docs/zh/`. Changelog flows English → Chinese.76- **Terminology**: Use the term table in `docs/AGENTS.md` exactly. Do not invent new translations or use synonyms.77- **Scope discipline**: Only update sections affected by the recent changes. Do not opportunistically rewrite unrelated docs.78- **Public examples**: Never write real internal endpoints, key names, account names, or service names into docs. Use neutral placeholders such as `https://api.example.com/v1`, `https://registry.example.com/v1/models/api.json`, `example.test`, and `YOUR_API_KEY`.79- **Breaking changes**: If any change is breaking, also update `docs/en/release-notes/breaking-changes.md` (under `## Unreleased`) with `**Affected**` + `**Migration**` subsections, and mirror it in `docs/zh/release-notes/breaking-changes.md`.80- **Do not edit auto-synced files**: `docs/en/release-notes/changelog.md` is regenerated by the sync script; any manual edit will be overwritten.8182## Common mistakes8384- Describing what code changed instead of what the user can now do (or can no longer do).85- Adding a new section heading per feature instead of weaving the change into existing prose.86- Updating only one locale and leaving its mirror stale.87- Editing only the mirror to fix wording that should be corrected in the locale you changed first.88- Inventing new terminology that drifts from the `docs/AGENTS.md` term table.89- Using real internal values in examples instead of neutral `example` placeholders.