Docs Lead
lablup/backend.ai-webui
A skill your agent uses whenever the user mentions docs, the manual, documentation, terminology, translations, or screenshots — including indirect mentions like "이 PR 문서 영향 봐줘", "문서 점검", "용어 통일"…
Check formatting compliance in changed documentation against writing-guides/formatting-guide.md and tools/translate/formatting-{zh,ja}.md.
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install langgenius/dify-docs dify-docs-format-check --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .claude/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .claude/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-checkType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install langgenius/dify-docs dify-docs-format-check --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .agents/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .agents/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install langgenius/dify-docs dify-docs-format-check --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .cursor/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .cursor/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/langgenius/dify-docs.git --path .claude/skills/dify-docs-format-check--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install langgenius/dify-docs dify-docs-format-check --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .gemini/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .gemini/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install langgenius/dify-docs dify-docs-format-checkInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .github/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .github/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add langgenius/dify-docs --skill dify-docs-format-check -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install langgenius/dify-docs dify-docs-format-check --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/langgenius/dify-docs.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/dify-docs-format-check .opencode/skills/dify-docs-format-check && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dify-docs-format-check" agent skill from https://github.com/langgenius/dify-docs/tree/main/.claude/skills/dify-docs-format-check into .opencode/skills/dify-docs-format-check/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dify-docs-format-check", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dify-docs-format-checkCheck formatting compliance in changed documentation against writing-guides/formatting-guide.md and tools/translate/formatting-{zh,ja}.md.
Dify Docs Format Check is an agent skill from langgenius/dify-docs. Check formatting compliance in changed documentation against writing-guides/formatting-guide.md and tools/translate/formatting-{zh,ja}.md. Routes by path: en/ files get the English linter and rules; zh/ and ja/ files get the CJK linter and rules. Use after finalizing a draft or a translation batch, or when the user says "check formatting", "format check", "format audit", or "check CJK formatting".
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files (for example `check-format-cjk.py`, `check-format-en.py` and `test_check_format_cjk.py`).
It sits in Writing & Content, covering Linting and formatting and Translation. It works with Dify. The licence is CC-BY-4.0.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 01f1cb6. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
python3gitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dify Docs Format Check loads about 2.7k tokens when it runs. Until then it costs about 106 tokens; SKILL.md has 1,336 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from langgenius/dify-docs at commit 01f1cb6, republished under its CC-BY-4.0 licence (© langgenius). 1,336 words, ~2,729 tokens.
.claude/skills/dify-docs-format-check/SKILL.md (or your agent's skills folder). This skill also uses 3 other files; get the full folder from GitHub.Read-only audit of documentation formatting. Mechanical rules are enforced by two linter scripts in this skill directory; judgment-call rules are checked by reading each file. Route by path:
| Files under | Linter | Judgment digest |
|---|---|---|
en/ | check-format-en.py | Step 4 (English) |
zh/ | check-format-cjk.py | Step 5 (CJK shared + Chinese) |
ja/ | check-format-cjk.py | Step 5 (CJK shared + Japanese) |
Read the rule sources for the languages in scope. The digests in steps 4-5 are summaries of these files; wherever a digest and its source disagree, the source file wins.
writing-guides/formatting-guide.md — all languagestools/translate/formatting-zh.md — when any zh/ file is in scopetools/translate/formatting-ja.md — when any ja/ file is in scopeDetect the files to audit. Audit entire files, not just diffs. Default to the files currently under review:
git diff --name-only; git diff --cached --name-only; git status --porcelain | grep '^??'Keep .mdx/.md files under en/, zh/, or ja/. If none are detected, ask the user which files to check. Translations ship as a zh/ja pair from one English source, so when both changed, audit both in the same session.
Run the linter for each path group and paste its output verbatim into your report:
python3 .claude/skills/dify-docs-format-check/check-format-en.py <en files...>
python3 .claude/skills/dify-docs-format-check/check-format-cjk.py <zh and ja files...>Success signal: each run prints one block per file and ends with Total violations: {n}; exit code is 0 when n = 0, 1 otherwise. A file passed to the wrong script is skipped with a stderr note (skip (non-en) / skip (non-zh/ja)); check-format-cjk.py selects the zh or ja rule set from the file path.
Then check that the three languages carry the same structure, passing every page in scope whatever its language (a zh or ja path is checked through its English twin):
python3 tools/check-parity.py --base origin/main <changed pages...>Success signal: PARITY OK: {n} pages; otherwise one line per new mismatch and PARITY ISSUES: {n}, exit 1. The check compares each English page with its twins by path: heading count and level, then per section the paragraphs, list items, code blocks, table rows, the sequence of components, and anchor ids. Heading text is not compared, and the translation disclaimer is skipped. Mismatches already present at the base ref are listed under pre-existing and do not fail the run, because much of the corpus predates this check; report them to the owner with the other pre-existing findings.
The scripts are the authoritative deterministic rule list. Violation lines print as line [rule-id] message and the messages are self-describing, so do not re-summarize each rule. Rule-ID families: F- frontmatter, H- headings, B- bold/italic, L- lists, C- code, Li- links, I- images, M- Mintlify components, U- UI element references (en only), S- spacing, P- punctuation, CJK- both CJK languages, ZH- Chinese only, JA- Japanese only.
Five IDs need context the message alone does not give:
H-ing-verb (en): section-name gerunds (Troubleshooting, Logging, Getting Started, etc.) are exempt via the SKIP_ING_HEADINGS constant in check-format-en.py. If a flagged heading is a legitimate section concept, propose the addition to SKIP_ING_HEADINGS in your report — do not edit the script.I-alt-empty (en): flags every empty alt as a prompt to confirm the image is genuinely decorative, not as a hard error.CJK-disclaimer-missing: the script looks for the translation disclaimer only within the ~10 lines below the frontmatter, so a disclaimer placed lower in the file still trips it. Pages whose frontmatter sets mode: "custom" or mode: "frame" are exempt — chrome-less landing pages carry no disclaimer (see the formatting guides' Translation Disclaimer exception).CJK-cross-lang-link: /en/... links are flagged everywhere except on the disclaimer line, which is allowed to point at the English source.CJK-latin-spacing: on lines with an even number of ** markers, the script skips every complete bold span, not only UI labels. Manually check each bold span with CJK and Latin/digit adjacency: a literal UI label preserves the product's spacing; emphasized prose needs the normal space. Lines with an odd number of ** markers remain fully checked after code and URLs are stripped. Non-bold quoted labels are not exempt.When changing the CJK checker, run python3 .claude/skills/dify-docs-format-check/test_check_format_cjk.py. The regression suite must end with OK and exit 0.
Judgment review — en/ files. Digest of writing-guides/formatting-guide.md (section names in parentheses; the guide wins on conflict). Read each file and check:
a, and, the, of, in, on, to, etc.) lowercase except at the start. Flag sentence case, all-lowercase, or inconsistency."word" used emphatically rather than as a quotation or literal-phrase reference.- **Label**: description.; items are all sentences (period) or all fragments (no period), never mixed; child content (description, callout, image) indented two spaces under its item.this page, here) even when it isn't click here exactly.alt="" only for genuinely decorative images; storage path follows the /images/<tier-1>/<tier-2>/... taxonomy; filenames descriptive and specific (workflow-llm-node-parameters.png, not screenshot.png).:---; bold in header row only when it aids clarity; multi-line cells prefer lists or components, falling back to <br/> only when a manual break is unavoidable.<Info>, <Note>, etc. reads cleanly (bold, links work as expected).Judgment review — zh/ and ja/ files. Digest of tools/translate/formatting-zh.md and tools/translate/formatting-ja.md (those files win on conflict). The two findings the linter misses most often are translated anchor slugs and {{placeholder}} variables left unchanged in otherwise-translated prompts. Read each file and check:
<Tab title="...">), Frame captions, and image alt text translated; bold UI labels translated; natural-language prompt examples inside code blocks translated with variable placeholders ({{variable_name}}) left unchanged.[text](#anchor) and [text](/path#anchor) use the translated heading slug — the heading ## 响应 produces #响应, not #response. Exception: a target heading or tab carrying an explicit stable ID ({#stable-id}, Tab id, or <a id>) is linked by that English ID in every language — check the target before flagging an English anchor.formatting-zh.md): enumeration comma 、 for parallel items within a sentence (§Enumeration Comma); ellipsis …… used correctly and not combined with 等 in one phrase (§Ellipsis); Arabic numerals for technical content (3 种, not 三种) with idiomatic expressions as the judgment call (§Numbers); translationese — redundant 你的, unnecessary 会, 当...时 wrappers, 能够 for 能, 可以 where 可 suffices (§Translation Quality → Patterns to Eliminate).formatting-ja.md): です/ます maintained in body text (§Writing Style, §Honorifics); headings are noun phrases, not sentences (§Headings); short loanwords (3 morae or fewer) keep the trailing ー, longer ones drop it, and established compounds (ワークフロー, ナレッジベース) match the glossary (§Katakana Conventions); middle dot ・ only where readability needs it, none inside established compounds (§Middle Dot); translationese — redundant あなたの, 〜することができます for 〜できます, 〜とき/〜場合 wrappers, stacked の (§Translation Quality → Patterns to Eliminate).Report. Paste the raw linter output first, then append judgment findings per file:
[linter output, verbatim — per file: "### {path}" (the cjk script adds
" ({lang})"), then "line [rule-id] message" lines or "✅ no deterministic
issues found", each run ending with "Total violations: {n}"]
### Judgment findings
**{path}**
- Line {n}: {description of issue} ({rule area})The scripts report only violations; do not invent per-rule "clean" lines they never printed. A file with no violations and no judgment findings needs nothing beyond its ✅ no deterministic issues found line.
SKIP_ING_HEADINGS additions, for the user to review and apply.-ing heading that belongs in SKIP_ING_HEADINGS, a _ in a legitimate filename or identifier, a half-width comma inside a Latin acronym, a mainland quotation mark quoted from an external source), surface it but note the ambiguity so the user can decide.dify-docs-terminology-check's job — do not check terms against the glossary or codebase i18n files here. When a finding overlaps terminology, note it and point the user at that skill.JA-sentence-too-long, JA-style-mix) are heuristic: they flag candidates for human review, not definitive violations.© langgenius, CC-BY-4.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 3 other files in .claude/skills/dify-docs-format-check of langgenius/dify-docs.
Open the folder on GitHubat commit 01f1cb6
Dify Docs Format Check next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dify Docs Format Check this skilllanggenius/dify-docs | 178 | — | ~2.7k | Automated safety check: Pass | CC-BY-4.0 | |
| Docs Leadlablup/backend.ai-webui | 133 | — | ~2.9k | Automated safety check: Pass | LGPL-3.0 | |
| Aholo Viewer Docsmanycoretech/aholo-viewer | 1.1k | — | ~341 | Automated safety check: Pass | MIT | |
| Sync Jaaws-samples/sample-amazon-bedrock-agentcore-onboarding | 133 | — | ~1.5k | Automated safety check: Pass | MIT-0 | |
| Hns Oss Docs Readme Syncmodu-ai/moai-adk | 1.2k | — | ~945 | Automated safety check: Notes | Apache-2.0 | |
| China Travel Kittczyliu/china-travel-kit | 194 | — | ~1.3k | Automated safety check: Pass | MIT |
lablup/backend.ai-webui
A skill your agent uses whenever the user mentions docs, the manual, documentation, terminology, translations, or screenshots — including indirect mentions like "이 PR 문서 영향 봐줘", "문서 점검", "용어 통일"…
manycoretech/aholo-viewer
Guides writing and maintaining Aholo Viewer documentation: README, AGENTS.md, architecture notes, bilingual manual pages and AI collaboration guides.
aws-samples/sample-amazon-bedrock-agentcore-onboarding
Sync Japanese README translations with English source. An agent skill from aws-samples/sample-amazon-bedrock-agentcore-onboarding.
modu-ai/moai-adk
README 4-file synchronization procedure for the oss-docs harness: Korean README.ko.md as primary source, en/ja/zh derivation, the shared language-switcher header contract, section-order parity…
tczyliu/china-travel-kit
Research and plan first-time independent trips in China with bilingual, source-aware city data and official live-check entry points.
freestylefly/wesight
Search tech blogs, developer forums, and IT media (TechCrunch, Hacker News, 36氪, etc.) for software and hardware industry updates with heat ranking and EN↔CN translation.
langgenius/dify-docs
Research a Dify feature before writing or optimizing documentation.
langgenius/dify-docs
Audit terminology consistency across documentation against the codebase UI labels and the glossary — in prose and in the UI strings shown in screenshots.
langgenius/dify-docs
Rule pack for the Service API specs ({en,zh,ja}/api-reference/openapiservice.json): spec conventions, app-type scoping, code-verification rules, and the audit machinery.
langgenius/dify-docs
Rule pack for the environment variable reference — en/self-host/deploy/configuration/environments.mdx.
langgenius/dify-docs
The entry point for writing or revising any documentation in this repo: user guides, deployment pages, plugin-dev pages, API specs, the env-var reference, CLI pages.
langgenius/dify-docs
Judge a finished draft as the docs owner would: a fresh agent reads it against the style guide and the reference page in its genre, marks the sentences that fall short, and returns a ship verdict on…
Works with
Categories
Check formatting compliance in changed documentation against writing-guides/formatting-guide.md and tools/translate/formatting-{zh,ja}.md. Dify Docs Format Check is an agent skill from langgenius/dify-docs.md.
Dify Docs Format Check fits situations like: says check formatting; check CJK formatting.
Run `npx skills add langgenius/dify-docs --skill dify-docs-format-check -a claude-code`. Or copy the skill folder (.claude/skills/dify-docs-format-check in langgenius/dify-docs) into .claude/skills/dify-docs-format-check in your project. Claude Code loads it when a task matches its description.
Run `npx skills add langgenius/dify-docs --skill dify-docs-format-check -a codex`. Or copy the skill folder (.claude/skills/dify-docs-format-check in langgenius/dify-docs) into .agents/skills/dify-docs-format-check in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add langgenius/dify-docs --skill dify-docs-format-check -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dify-docs-format-check, .gemini/skills/dify-docs-format-check, .github/skills/dify-docs-format-check and .opencode/skills/dify-docs-format-check in your project.
Going by SKILL.md and its folder, Dify Docs Format Check needs Python for the scripts in its folder and the command-line tools its instructions call (python3 and git). Our summary lists: Python 3.
SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dify Docs Format Check is published under the CC-BY-4.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dify Docs Format Check: Docs Lead (lablup/backend.ai-webui, 133 stars), Aholo Viewer Docs (manycoretech/aholo-viewer, 1.1k stars), Sync Ja (aws-samples/sample-amazon-bedrock-agentcore-onboarding, 133 stars) and Hns Oss Docs Readme Sync (modu-ai/moai-adk, 1.2k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
langgenius (a GitHub organization) maintains it in langgenius/dify-docs, which has 178 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on October 8, 2026.
Source: langgenius/dify-docs on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.