user-docs
Write user documentation for a project by scanning its codebase — its UI screens and its public API/CLI — inferring what someone can actually do with it, and…
Skill by fullymiddleaged
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/fullymiddleaged-user-docs
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design, backend, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/user-docs
What's inside
- Skill name
user-docs- Description
- Write user documentation for a project by scanning its codebase — its UI screens and its public API/CLI — inferring what someone can actually do with it, and drafting brief, task-oriented docs to the Diátaxis standard (tutorial / how-to / reference / explanation). Handles both non-technical end-user docs and developer docs. Use when asked to document the app, write user or API docs, generate a getting-started guide, or when the project's docs are missing or out of date. Scans and proposes an outline, then writes only after you approve it.
- License
- MIT
- Instructions
- 130 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Write user documentation from the codebase
Good docs describe what the software actually lets someone do. This skill builds that
picture from the code — the UI screens and the public API/CLI — then writes it up to a
known modern standard, kept brief.
**Two audiences, one standard.** Software usually needs one or both:
- **End-user docs** — for the person using the product. Driven by the **UI**: screens,
buttons, forms, settings. Non-technical, task-first.
- **Developer docs** — for someone integrating with or extending it. Driven by the
**public API/CLI/config**: exports, endpoints, commands, flags, env vars.
Both are structured with **[Diátaxis](https://diataxis.fr)** — the framework Django,
Cloudflare, and Gatsby use — and written in **Google-style prose** (second person,
active voice, present tense, sentence-case headings, short sentences).
**Say this before you start writing.** This can produce a lot of files and it takes a
while. Whether the user typed `/clawness:user-docs` or you reached for this skill on
your own, the discipline is the same: **scan, propose an outline, and stop for approval
before writing anything.** Never author a docs tree uninvited.
## Argument
`/clawness:user-docs [end-user|dev]` — which audience to document. With no argument,
detect what the project has (a UI, a public API/CLI, or both) and ask which to produce.
You can do both — run the flow once per audience.
## The standard
Structure every page by its **Diátaxis mode**, and keep one mode per page:
| Mode | Answers | Shape |
| --- | --- | --- |
| **Tutorial** | "get me started" | one guided first task, end to end |
| **How-to guide** | "how do I do X" | numbered imperative steps for one real task |
| **Reference** | "what is X exactly" | exhaustive, consistent, look-up-able |
| **Explanation** | "why does it work this way" | a concept and its rationale |
Never blend a tutorial with reference on one page — the reader is there for one thing.
For an existing product, weight the effort toward **how-to guides and reference**; add
explanation only where a concept genuinely needs it.
**Brevity is the standard, not a nicety.** Lead with the task. Cut any sentence that
restates the heading, the UI, or the code. A how-to step is an imperative ("Click
**Export**"), not a paragraph.
## Steps
### 1. Find where docs live, and fit it
Detect the existing docs setup and write into it rather than imposing a new one:
MkDocs (`mkdocs.yml`), Docusaurus (`docusaurus.config.*`), Sphinx (`conf.py`), Astro
Starlight, VitePress, a plain `docs/` tree, or README-only. If none exists, propose a
`docs/` tree of Markdown files. Do not install a docs framework.
Read the current docs first — you are updating, not duplicating. The README usually
already covers install and a first run; reference it, don't repeat it.
### 2. Build the capability inventory (the scan)
Before writing a word, work out what the software does. Run `/clawness:status` (or the
bundled CLI wrapper) to read the detected stack so you know where routing, CLI, and
config live, then explore with Grep/Glob/Read.
**End-user surface (from the UI):**
- **Screens** — file-based routing (`app/`, `pages/`, `routes/`) or a router config
(React Router, Vue Router).
- **User-visible strings** — headings, button labels, form fields, nav and menu items,
`aria-label`/`placeholder`. **i18n message catalogs are the jackpot**: they enumerate
every user-facing string in one file.
- **Actions → capabilities** — a form submit, a button handler, a mutation is a task
the user can perform ("you can export a report"). Settings screens become the
configuration reference.
**Developer surface (from the public API):**
- **Entry points** — `package.json` `exports`/`bin`, public functions/classes, HTTP
route handlers, CLI commands and flags (argparse / click / commander / cobra), SDK
surface, extension points (hooks, plugins, interfaces).
- **Setup** — install steps, env vars, config files, build and run scripts.
Cluster the result into a **capability map**: task → where it lives in the UI or API.
That map is what you turn into pages.
### 3. Propose the outline, then stop
Present the proposed Diátaxis tree as a table — each page with its mode and a one-line
intent — plus where the files will go. **Write nothing until the user approves.** This
is the gate that makes an auto-invoked run safe.
```
docs/
getting-started.md tutorial — first run, one task end to end
guides/export-report.md how-to — export a report as CSV
guides/invite-user.md how-to — invite a teammate
reference/screens.md reference — every screen and what it does
reference/settings.md reference — every setting, its default and effect
```
### 4. Write the approved pages, one at a time
For each approved page, in the standard:
- Open with the task or the thing being defined — no preamble.
- How-to guides are numbered imperative steps. Reference is complete and consistent.
- **Ground every claim in source.** A button label, route, command, flag, or env var
you write must match the actual string in the code, verbatim. If you can't find it in
the code, don't document it — you're inventing a feature.
- Keep each page short. If a reference page sprawls, split it by area, don't pad it.
### 5. Verify
- Grep each cited label / route / command / flag back against the source and confirm it
exists exactly as written. This is the check that catches a hallucinated feature.
- Confirm internal links resolve and any new pages are wired into the docs nav/index.
- Re-read for length: cut what the code or a heading already says.
- Report what you wrote and what remains, and remind the user new docs pages don't
affect anything until they commit them.
## Don'tFrom fullymiddleaged/Clawness, MIT.
More from fullymiddleaged/Clawness
- 0.619score
audit-rules
fullymiddleaged
Review one domain of the Clawness rule corpus for correctness against current official documentation, then record what was established as a version stamp…
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
bootstrap
fullymiddleaged
Author a starter set of Clawness rules for a project whose stack Clawness ships no corpus for (Ruby, PHP, Elixir, Haskell, C#, Swift, Dart, Scala, Clojure…
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
claude-md
fullymiddleaged
Shrink an oversized CLAUDE.md.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
eval-set
fullymiddleaged
Build and run a project-specific retrieval eval so changes to your rules or base prompt are scored, not eyeballed.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
messaging
fullymiddleaged
Write or rewrite the product's customer-facing copy — landing page, hero section, CTAs, onboarding, empty states, pricing, app-store and marketing pages —…
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
openclaw-audit
fullymiddleaged
Trim an OpenClaw workspace's base system prompt.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
refresh
fullymiddleaged
Bring this project's Clawness rules up to date with the framework version it actually runs.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
security-audit
fullymiddleaged
Run a stateful red team / blue team security audit on the current project or a specific module.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
status
fullymiddleaged
Show the current Clawness configuration: which rules are loaded, which agents are available, and how the hook is configured.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
add
fullymiddleaged
Create a new Clawness rule from a natural language description.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
perf
fullymiddleaged
Run a performance audit on the project or a specific module.
SkillAFreshness: A★ 5Claude Code +9 - 0.616score
review
fullymiddleaged
Run an adversarial code review on staged changes or a specific file.
SkillAFreshness: A★ 5Claude Code +9
Signals
- Stars
- 5
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Aug 20, 2026 (2 months ago)
- Last release
- Oct 4, 2026 (24 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/fullymiddleaged/Clawness
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from fullymiddleaged
- 0.619score
bootstrap
fullymiddleaged
Author a starter set of Clawness rules for a project whose stack Clawness ships no corpus for (Ruby, PHP, Elixir, Haskell, C#, Swift, Dart, Scala, Clojure…
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
claude-md
fullymiddleaged
Shrink an oversized CLAUDE.md.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
eval-set
fullymiddleaged
Build and run a project-specific retrieval eval so changes to your rules or base prompt are scored, not eyeballed.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
messaging
fullymiddleaged
Write or rewrite the product's customer-facing copy — landing page, hero section, CTAs, onboarding, empty states, pricing, app-store and marketing pages —…
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
openclaw-audit
fullymiddleaged
Trim an OpenClaw workspace's base system prompt.
SkillAFreshness: A★ 5Claude Code +9 - 0.619score
audit-rules
fullymiddleaged
Review one domain of the Clawness rule corpus for correctness against current official documentation, then record what was established as a version stamp…
SkillAFreshness: A★ 5Claude Code +9
Cite this page
user-docs skill. Agent Mart. https://agentmart.dev/skills/fullymiddleaged-user-docs (last updated 2026-10-24)