Skip to main content

docs

Read before editing anything under docs/, and for the end-of-branch docs sync — generated feature and config pages, the en↔zh translation checker, the pixi commands driving them.

ソース情報

リポジトリ
clice-io/clice
ソースの最終更新活動
2026年10月16日 03:33
検出された SKILL.md の言語
英語
スター
1,355
フォーク
86

インストール方法

デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。

ソースファイルを確認

インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。

SKILL.md を表示中

SKILL.md
ソースの指示 · 読み取り専用プレビュー
name
docs
description
Read before editing anything under docs/, and for the end-of-branch docs sync — generated feature and config pages, the en↔zh translation checker, the pixi commands driving them.
# Documentation system ## Layout and sources of truth - `docs/en/` — English pages. Handwritten pages (design/, guide/, dev/, index.md) are edited directly; feature pages (features/\*.md) contain GENERATED regions listing the documented cases (`tests/README.md`, "Docs"), and guide/configuration.md is rendered from the config schema. **Never edit inside a `<!-- BEGIN GENERATED ... -->` region** — edit the case's `README.md` or the config annotations instead. - `docs/cards/` — one card per documented case, written by the cases run (`UPDATE_SNAPSHOTS=1`); never edit by hand. - `docs/zh/` — Chinese pages, equally real and equally hand-edited (by a person or a model). Each zh page must stay **segment-isomorphic** to its en counterpart: same sequence of markdown blocks, translated text in the translatable blocks, code blocks and HTML comments byte-identical. - `docs/meta/translations/` — the hash pairs attesting each translated segment. Maintained exclusively by `record`; never edit by hand. - Each tree has its own hand-maintained `sidebar.yaml`. - `docs/public/clice-config.schema.json` — committed output of `clice inspect --config-schema`; CI checks freshness. ## Commands (pixi) | command | what it does | | ---------------------------------- | -------------------------------------------------- | | `pixi run check-feature-docs` | feature pages and cards match the cases (CI) | | `pixi run update-feature-docs` | rewrite feature GENERATED regions | | `pixi run check-config-docs` | configuration page matches the schema (CI) | | `pixi run update-config-docs` | rewrite the configuration page | | `pixi run check-doc-translations` | hard gate: zh isomorphic to en, all pairs attested | | `pixi run report-doc-translations` | translator worklist: drifted segments with texts | | `pixi run record-doc-translations` | re-attest hash pairs after deliberate edits | | `pixi run review-doc-translations` | model review of zh pages, segment by segment | ## Translation contract The checker is `@clice-io/translate` from the clice-io/docs repository, shared by every clice-io project with a Chinese tree. Its **RULES.md at v1.0.0** states the contract, the commands and the editing workflow — read it before any edit touching translated pages: gh api 'repos/clice-io/docs/contents/tools/translations/RULES.md?ref=v1.0.0' -H 'Accept: application/vnd.github.raw' CI runs `clice-io/docs/check-translations` in the lint workflow's docs job, pinned to an exact release; the pixi tasks above run that same release locally (`tools/docs/translations.ts` reads the pin, until the package is on npm and the tasks call `npx @clice-io/translate@1`). A new release is adopted by bumping the pin in lint.yml and the RULES.md references here and in the translate-docs skill. What clice adds on top: - In clice the frontmatter that translates is index.md's (the VitePress home page), and the bold paragraph whose shape must survive is a capability card's name; a table row paired with a later heading is a capability's status row and its section. - The formatter of step 4 in RULES.md's workflow is `pixi run format` (it canonicalizes table padding, emphasis style and CJK spacing). - The workflow applies to generated regions too: after `update-feature-docs` changes an en feature page, the zh page must receive the translated equivalent in the same PR — batched at the end of the branch, see below. - The wording — clice's page conventions and glossary — is the translate-docs skill. `review-doc-translations [page...]` passes that skill to the model as the glossary; review its diff, then `format` and `record`. Prefer it over handing a model whole pages: the code blocks would only burn its context. ## Syncing docs at the end of a branch Generated regions and translations are synced **once per branch, right before the checks** of the pr skill — not after every case or page edit, and not in the main conversation: delegate it to an Opus subagent so the report output and page texts never enter the main context. Give the subagent this skill and `git diff --name-only origin/main...HEAD`; its brief is: 1. If documented cases or config annotations changed: `pixi run update-feature-docs` and `pixi run update-config-docs` rewrite the en GENERATED regions. 2. `pixi run report-doc-translations` lists every broken pair with both texts. Translate each new or drifted en segment into the zh page, keeping the skeleton (same block kind, list marker, heading depth, nested code byte-identical) and the terminology of the surrounding page; delete zh segments whose en segment is gone. For whole new pages, or dozens of drifted pages, copy the en page over the zh one and run `review` on it (machine drafting, RULES.md). 3. `pixi run format`, then `pixi run record-doc-translations`, then `pixi run check-doc-translations`, `check-feature-docs` and `check-config-docs` — all green. 4. Report back: pages touched, how many segments were translated, and anything deliberately left as is. **docs/ contains no changelog content** — neither per-page "Changelog" sections nor changelog pages. Feature history lives in git and PRs; LLVM upgrade notes live in the upgrade-llvm skill's `llvm-changelog.md`. ## What belongs in a "Known Limitations" section Design-level, user-visible trade-offs that are stable on a months timescale, written in behavior terms — they answer the reader's "why does it work this way". Bugs never go there: they live in the internal bug inventory and simply disappear when fixed; putting them in docs creates staleness debt. Feature coverage gaps are already expressed by the generated status tables. The flow is one-way: an internal item graduates into a doc limitation only once it is decided to be design (or long-term deferral), and a doc limitation is removed only when the design changes. Never reference internal IDs, file paths, or timelines in docs.
GitHubで見る