technical-documentation
Skill1 starsChanged 30 days agoMITView on GitHub
Create, update, or review technical documentation from repository sources and primary references, including developer and user guides, API or factual references, onboarding material, technical specifications, release notes, and architecture decision records. Use readme-design for project READMEs and explain-it for one-time explanations.
33 other projects use a version of this.
Adopted by
Most recently taken up by
- taixuann/development-spacetheir own version, first seen Nov 8, 2026
- hamzzaqureshi/gravidextheir own version, first seen Nov 8, 2026
- Djarvur/go-ultimatetheir own version, first seen Nov 1, 2026
- JPeetz/agent-skillstheir own version, first seen Oct 28, 2026
- shanselman/openclaw-windows-hubtheir own version, first seen Oct 17, 2026
- OpenClawAndroid/openclaw-android-assistanttheir own version, first seen Oct 17, 2026
Used with
Projects with it also use clawhub-ban-appeals, clawhub-clawscan and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
openclawSkillclawhub-ban-appeals
Review ClawHub account-ban appeals, distinguish bans from moderation holds or blocked releases, and prepare an evidence-backed moderation decision. Route validated scanner inaccuracies to clawhub-clawscan.
Also in 3 projects that use this
openclawSkillclawhub-clawscan
Investigate ClawScan health alerts, diagnose scanner or ClawHub integration failures, prepare operational repairs, and route validated verdict inaccuracies upstream. Account ban appeals use clawhub-ban-appeals.
Also in 3 projects that use this
FabienGreardSkillconvex-acquire-domain
Find and buy a domain for the current Convex app through Convex, then bind it (labs; spend action).
Also in 3 projects that use this
- +9 more from openclaw
Other versions33 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 33
- moltbot/clawdbot★ 394ksame name
- steipete/warelay★ 394ksame name
- steipete/clawdis★ 394ksame name
- moltbot/moltbot★ 394ksame name
- clawdbot/clawdbot★ 394ksame name
- openclaw/openclaw★ 394ksame name
- molt-bot/clawdbot★ 391ksame name
- openclaw/clawhub★ 9.6ksame name
- clawdbot/clawdhub★ 9.5ksame name
- moltbot/molthub★ 9.5ksame name
23 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository23 other files it gives its agents.
- AGENTS.mdAGENTS.md
- address-feedbackSkill
- agent-planningSkill
- anti-ai-writingSkill
- api-designSkill
- ci-cd-workflowsSkill
- code-reviewSkill
- decision-partnerSkill
- explain-itSkill
- frontend-engineeringSkill
- git-deliverySkill
- implement-planSkill
- jira-ticketsSkill
- readme-designSkill
- release-readinessSkill
- review-lenseSkill
- root-cause-debugSkill
- safe-migrationsSkill
- skill-authoringSkill
- test-authoringSkill
- using-skillsSkill
- writing-clean-simple-codeSkill
- writing-optimized-sqlSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
21 rules. 0 are common, 21 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 31 edited versions we read keep these.
21
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
Read anti-ai-writing before drafting.
- Distinctive: line 23
Follow the paths relevant to the reader instead of inventorying the whole codebase.
- Distinctive: line 34
When an implementation change affects documented behavior, update the affected documentation in the same change when it is in scope.
- Distinctive: line 42
Start from the reader's technical question and identify the relevant execution path.
- Distinctive: line 49
Write from that evidence. Prefer concise prose around verified facts over prose that restates source code.
- Distinctive: line 62
Do not call prose or a table generated unless a maintained generator produces it.
- Distinctive: line 70
Document stable user-visible behavior and supported contracts first.
- Distinctive: line 79
Use Diátaxis to choose the page's primary purpose before drafting.
- Distinctive: line 112
Use GitHub Flavored Markdown (GFM) for Markdown documentation by default.
- Distinctive: line 128
Use descriptive labels, blank lines around Markdown inside HTML, and complete expanded paths.
- Distinctive: line 130
Use a table of contents only when it materially improves navigation in a long page.
- Distinctive: line 153
Use code examples, diagrams, tables, screenshots, and use cases when they help the reader understand or complete the task.
- Distinctive: line 179
Document actual behavior and operational prerequisites, not the original plan.
- Distinctive: line 180
Use safe-migrations for transition instructions when relevant.
- Distinctive: line 186
Check every local link and referenced file.
- Distinctive: line 192
Keep verification claims at the level of evidence obtained:
- Distinctive: line 196
Command: run safe examples from the documented working directory with stated prerequisites.
- Distinctive: line 202
Host behavior: check discovery, activation, or invocation in the named host separately.
- Distinctive: line 205
Run only the levels needed for the changed claims and reader task.
- Distinctive: line 208
Keep verification proportional and report untested platforms or live steps.
- Distinctive: line 212
Before delivery, trace one reader's task from entrypoint to success.
“Common” is measured: kept by at least 6 in 10 of the 31 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.
Files
Technical Documentation
Read anti-ai-writing before drafting. Establish the reader, their technical background, the question or task, the destination, the source of truth, and the requested scope. Use this skill for a durable document; use readme-design for the project README and explain-it for a one-time explanation. Inspect repository instructions, the project structure, existing docs, code, schemas, configuration, and actual decisions. Preserve useful content and local conventions.
1. Discover and scope the work
Follow the paths relevant to the reader instead of inventorying the whole codebase. Identify the project or component, its entrypoints, important dependencies and configuration, and the tests or workflows that establish behavior. Read source files after finding them; filenames, manifests, comments, and test names alone do not prove what the product does.
Compare the requested outcome with the existing docs and implementation. Note missing, stale, duplicated, or conflicting guidance that blocks the reader's task. Update the smallest coherent set of documents. Do not turn a scoped request into a repository-wide rewrite or claim documentation coverage you did not inspect.
When an implementation change affects documented behavior, update the affected documentation in the same change when it is in scope. For generated docs, edit the maintained source and regenerate only affected outputs with the repository's documented generator. If no generator exists, maintain the document directly; do not imply that all docs or the README can be regenerated automatically.
2. Trace the implementation
Start from the reader's technical question and identify the relevant execution path. Inspect entrypoints, callers, configuration, schemas, tests, and error paths as needed. Record which repository evidence supports each behavior, default, constraint, and failure case. Distinguish observed behavior from inference and unresolved behavior. Do not use an old document, plan, comment, or test name as proof when the implementation can be inspected.
Write from that evidence. Prefer concise prose around verified facts over prose that restates source code. Use exact identifiers, values, paths, and version constraints. If the implementation does not establish an answer, say what remains unknown rather than filling the gap with an assumption. If a required source or environment cannot be checked, hold any dependent claim as unverified; omit it or label the limit instead of presenting it as fact.
For a substantial reference or a page spanning several execution paths, add a compact source map that connects each major behavior to its implementation and, where useful, the command or test that checks it. Keep that map proportional to the page; small edits do not need a provenance appendix. When the same inventory, default, or version appears in several places, link to its canonical source or generate the repeated content from that source when the repository supports it. Do not call prose or a table generated unless a maintained generator produces it.
Separate evidence by authority. Repository behavior comes from the current implementation and its contracts; tests can reveal expected cases but can also be stale. External behavior comes from current primary documentation or a normative specification. Runtime observations apply only to the tested revision, host, and environment. Record those limits when they matter to the reader.
Document stable user-visible behavior and supported contracts first. Include internal control flow only when it helps a maintainer answer a concrete question. For change-prone host or dependency behavior, identify the relevant product, surface, and version when known, and recheck the primary source when editing that claim. Add review dates only when they help maintain a changing inventory; avoid dates that make stable repository behavior look temporary.
3. Choose the document's job
Use Diátaxis to choose the page's primary purpose before drafting. Establish the document type, audience, reader goal, and scope from the request and repository evidence. Ask only for missing information that materially changes the document. For a substantial new document or restructure, establish an outline before drafting; request outline approval only when the user asks for it or unresolved choices require their decision.
| Type | Reader need | Required shape |
| Tutorial | Learn through a guided first success. | State prerequisites and the learning outcome; provide a reliable sequence with observable results. Keep alternatives and deep theory in linked pages. |
| How-to guide | Complete a specific task with existing knowledge. | Name the task, prerequisites, ordered actions, expected result, and relevant recovery or alternatives. |
| Reference | Look up exact technical facts. | Organize consistently around the interface or subject; specify verified identifiers, types, defaults, constraints, errors, and versions. Keep teaching and rationale in linked pages. |
| Explanation | Understand a concept and its implications. | Explain context, relationships, reasons, and tradeoffs with supported examples or diagrams. Link to procedures and reference details. |
Give each page a clear primary purpose and link to complementary pages. Do not force four sections onto every page or reorganize a whole documentation set for a small edit. Preserve specialized forms such as ADRs and release notes. Keep navigation centered on reader tasks even when authoring uses these categories.
Organize the reader's complete technical task, not just individual files. Keep project overview and first-use navigation in the README; use readme-design when creating or substantially revising that entrypoint. Keep a host's installation, activation, and updates together in the relevant technical guide. Present supported hosts equally unless a recommendation is justified by the user or product requirements.
Make linked references usable directly: their title and filename should describe their purpose, and their commands should include prerequisites and a working directory. Avoid circular setup links, duplicate procedures, and maintainer detail in onboarding. Preserve supported alternatives, customization handling, and limits.
4. Format with GitHub Flavored Markdown
Use GitHub Flavored Markdown (GFM) for Markdown documentation by default. Preserve an explicitly required destination format or an established documentation generator's syntax. Read GFM guidance when authoring or reviewing Markdown. Distinguish GFM syntax from GitHub-specific features and verify support on the intended surface.
Make technical pages easy to scan without reducing precision. Use one descriptive page title, a logical heading hierarchy, short focused paragraphs, ordered steps for procedures, and fenced code blocks with language identifiers. Format technical identifiers as inline code, use descriptive links, and give informative images useful alt text. Use compact tables for comparable fields; move long examples or procedures out of table cells. Separate prerequisites, actions, expected output, and recovery so readers can follow a procedure without guessing.
Choose formatting for the renderer. On GitHub, native <details> / <summary>
sections can make independent host paths or long optional material easier to scan.
Use descriptive labels, blank lines around Markdown inside HTML, and complete
expanded paths. Keep shared prerequisites visible; avoid nested disclosure piles.
Use a table of contents only when it materially improves navigation in a long page.
Headings, tables, and lists should help readers navigate or compare. Use only
features that improve the technical reader's task and work on the target surface.
For task and user guides, show prerequisites, ordered actions, expected results, and relevant recovery. Use terms and depth that fit the audience while keeping technical behavior accurate. Label platform-specific commands and placeholders. For API or factual references, state exact names, types, inputs, outputs, defaults, constraints, errors, and supported versions that are established by the contract or implementation. Use api-design for interface design and contract changes. Generate OpenAPI or other references only through an existing, verified generator or when establishing that workflow is explicitly in scope. For architecture or business-facing documents, distinguish current facts, decisions, proposals, risks, and estimates. Do not invent feasibility, timelines, costs, ROI, or stakeholder commitments. Do not impose a new documentation platform or elaborate hierarchy for a small edit.
For release notes or changelogs, derive entries from the actual release or change range. Separate shipped changes from planned work, and describe user impact only when supported. Use release-readiness for rollout assessment and git-delivery for authorized publication work; this skill does not authorize either.
Use code examples, diagrams, tables, screenshots, and use cases when they help the reader understand or complete the task. Verify examples against the actual interface or run them safely. Build diagrams from inspected relationships and use formats the destination supports. Do not add visuals as decoration or imply a diagram is complete when dependencies were not traced.
5. Record decisions without rewriting history
For consequential architectural choices, inspect existing ADR location, numbering, status, and templates before adding a record. If none exist, use a short Markdown record with title, status/date, context, decision, considered alternatives, and consequences, including drawbacks and unresolved implications.
Record actual decisions and evidence. Do not invent evaluated alternatives or mark a proposal accepted because an agent wrote it. Preserve accepted ADRs as historical records; supersede them with a linked new decision rather than rewriting the past. Correct factual errors transparently and distinguish present implementation from the reasoning known at decision time.
6. Draft from verified behavior
Lead with the information needed to act. Use complete sentences, consistent terms, descriptive headings, and small examples. Use tables for genuine comparisons and lists for steps or parallel items, not a checklist on every page. Explain non-obvious reasons, limitations, and failure cases; avoid repeating source code or conversation history.
Document actual behavior and operational prerequisites, not the original plan. Use safe-migrations for transition instructions when relevant. Keep examples realistic and safe, with placeholders clearly identified and no secrets. Copy technical identifiers, units, paths, and contractual values accurately.
7. Verify with the reader's task
Check every local link and referenced file. Verify external facts against primary sources when unfamiliar or subject to change. Run examples and documented commands in a safe representative environment when feasible, following the instructions as a new reader would. Do not execute production/destructive steps to prove documentation. Record untested platforms, prerequisites, and live actions instead of claiming success.
Keep verification claims at the level of evidence obtained:
- Structural: links, anchors, fenced blocks, frontmatter, and generated package contents resolve or parse. This does not prove that commands work or pages read well.
- Command: run safe examples from the documented working directory with stated prerequisites. For installers, use a fresh scratch destination and check conflict, merge, backup, and sibling-preservation behavior when those are documented.
- Rendered: inspect the target renderer for navigation, code, tables, media, disclosure sections in both states, and narrow layouts when relevant. A local reference parser is structural/rendering evidence, not proof of GitHub's exact page.
- Host behavior: check discovery, activation, or invocation in the named host separately. File placement or a rendered page does not establish model behavior.
Run only the levels needed for the changed claims and reader task. State which level was checked and what remains unverified; never let a lower level imply a higher one.
Keep verification proportional and report untested platforms or live steps. Reconcile the final prose with observed behavior after material edits. Change generated documentation at its source so the next build does not overwrite the repair.
Before delivery, trace one reader's task from entrypoint to success. Remove needless jumps, duplicate instructions, missing prerequisites, and misleading labels. For a substantial sourced redesign, record sources and the principle each informed; do not invent provenance or claim a universal standard. See documentation sources for current references.
Report the artifact, verified tasks, and material gaps. Creating local documentation does not authorize external posting or publication. Use authorized git-delivery for Git actions and preserve existing approval.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

