一键导入
rsh-docs
Write and maintain Restish documentation, blog posts, release announcements, tutorials, recipes, and user-facing product explanations.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Write and maintain Restish documentation, blog posts, release announcements, tutorials, recipes, and user-facing product explanations.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
Shape Restish product direction, feature strategy, and CLI/developer-tool UX. Use when planning, prioritizing, designing, or reviewing a Restish feature before or during implementation; when evaluating whether a request fits Restish; when turning user feedback into a feature proposal; when checking CLI UX, help, errors, output, docs, tests, compatibility, or release readiness.
Run Restish release readiness QA from main using recent commits, built-in historical risk patterns, docs, and full release gates; report reproducible issues without patching product code
Review Restish code changes for bugs, regressions, missing tests, and repo-specific risks
Analyze the Restish codebase for simplification and refactoring opportunities, then implement approved changes
Write or improve Restish tests with concise, high-density Go coverage, especially CLI behavior tests using OpenAPI specs, mock HTTP servers, real CLI commands, and expected output
基于 SOC 职业分类
| name | rsh-docs |
| description | Write and maintain Restish documentation, blog posts, release announcements, tutorials, recipes, and user-facing product explanations. |
You write and maintain Restish documentation and product writing. Help users succeed with the CLI, and help maintainers preserve design intent. Docs and posts are part of the product, not release-note filler or a wrapper around implementation details.
Maintain user docs in site/, blog posts in site/content/en/blog/, design docs in docs/design/, user-facing Markdown elsewhere, examples, tutorials, recipes, plugin docs, and Go doc comments for exported APIs.
When user-visible behavior changes, update user docs. When architecture or subsystem behavior changes significantly, update or add a design doc.
Choose one primary mode before writing:
Do not blur modes casually. If reference needs context, link to a guide. If a design doc changes user behavior, write the user-facing explanation too.
Write like a capable engineer helping another capable person:
Route readers by intent:
Landing pages should be curated routers, not passive indexes. Prefer "start here", common workflows, popular reference, troubleshooting, and maintainer/plugin paths with one-sentence descriptions.
Every user-facing page should:
Prefer example-first pages. Put command, request, and output close together.
Use examples that look like real work:
https://api.rest.sh.These apply to every command example in docs, guides, recipes, and blog posts:
jq or plain JSON when possible.get or post in examples when the auto mode is clear (e.g.,
restish api.rest.sh/example instead of restish get api.rest.sh/example).--rsh-no-paginate when not talking
explicitly about pagination, or --rsh-columns when the default output is
fine. Extra flags complicate commands and make examples harder to read.
Avoid -o lines unless it significantly improves output readability.restish-example shortcode commands are extracted and validated by
scripts/check-doc-examples.rb: CI enforces that each one is a single direct
restish invocation (no pipes, redirects, ;, &&, command substitution, or
backticks) that parses cleanly with shell word-splitting, and a weekly job
executes every one live against api.rest.sh and fails on non-zero exit.
Write shortcode examples as commands that actually succeed against the public
API; use plain fenced code blocks for pipelines, local-only setup, or
illustrative failures.
Restish shorthand examples should be shell-safe and match how the docs display them:
restish-example shortcodes, commands are presented as a single line.
Keep the command on one line and quote the entire shorthand expression.restish post api.rest.sh/post 'name: Alice, tags[]: docs, active: true'.'name: Alice,' 'tags[]: docs' in interactive examples.name: Alice or
file: @README.md; the shell splits those tokens and makes the example easy
to misread or copy incorrectly.echo '{"role":"user"}' | restish post api.rest.sh/post 'role: admin'.Tiny shorthand reference:
name: Aliceuser.name: Alicetags[]: docspayload: @payload.jsonname: Alice, enabled: true, count: 3Canonical endpoints:
https://api.rest.sh/ for first requests and header inspection.https://api.rest.sh/images for pagination, links, filtering, table output, and NDJSON.https://api.rest.sh/images/<format> for image and raw download examples.https://api.rest.sh/example for nested filtering.https://api.rest.sh/types for shorthand, input, and edit-style examples.https://api.rest.sh/books for bulk workflows.Getting started: promise a concrete result, install/build only what is needed, make one successful request quickly, show output, explain the smallest useful mental model, then link to the next 2-4 pages.
Guide: state the workflow and when to use it, list prerequisites, show the recommended path first, explain important choices, include commands/output, and link to reference for exact syntax.
Recipe: state the task, give the command first, show the result, add short variant/safety/failure notes, and link deeper.
Command reference: include purpose, common examples first, usage, arguments, command-specific flags, output behavior, config/env interactions, relevant errors/exit behavior, and related commands/guides. Mirror CLI help where useful, but do not leave users with generated syntax alone.
Config reference: include scope, precedence, file location, fields, types, defaults, allowed values, examples, and related commands.
Troubleshooting: repeat the shape Symptom, Likely cause, How to confirm, Fix, Prevention, Related docs. Good topics include auth failures, OpenAPI loading/cache, content negotiation, pagination, shorthand parsing, plugin discovery, and output formatting.
Blog post or announcement: lead with the user problem, product change, or technical bet. Keep the narrative grounded in examples users can try. Use the post to create interest and explain why the work matters, then route exact syntax and long-lived procedures to docs pages.
Use blog posts for release stories, API tooling ideas, OpenAPI/CLI design notes, automation patterns, plugin/MCP stories, and deeper product decisions. Blog posts can be warmer and more narrative than reference docs, but they must stay technically specific and useful.
General notes for blog posts:
curl, Postman, SDKs, and Swagger UI all have
valid jobs; Restish owns the shell-native, API-aware workflow between them.restish-example shortcodes near the claims they support.api.rest.sh examples and call out when the browser preview
has built-in API mappings that differ from local setup.title, linkTitle, date, author,
description, canonical_url, categories, and tags.Good blog shape:
Avoid turning posts into vague marketing copy. Avoid dunking on adjacent tools. Avoid making blog posts the only source for exact commands, migration steps, or security-sensitive behavior; link to durable docs and update those docs when the post reveals a gap.
Whenever you write a new blog post or modify an existing one, do a separate review pass of the changes (use a sub-agent if available) and apply the resulting improvements. The review should check for:
Always separate operator docs from author docs. Operators need install/configure/run/verify/debug. Authors need contract, inputs/outputs, lifecycle, testing, compatibility, packaging, and distribution. Do not make operators read authoring internals to use a plugin.
Design docs live in docs/design/. Before significant feature or architecture work, write one and get feedback. Update docs/design/README.md when adding one.
Use this shape: title/status, problem, goals, non-goals, current behavior/constraints, user-facing behavior, proposed design, alternatives, compatibility/migration, security/privacy/failure modes, testing plan, documentation impact, open questions, decision/outcome.
Design docs preserve decisions, tradeoffs, and invariants. They are not a substitute for user docs.
When a design doc needs product framing, command/flag naming, UX tradeoffs,
compatibility stance, release-readiness judgment, or prioritization help, use
rsh-product alongside this skill. Let rsh-product shape the product
decision, then use rsh-docs to make the record clear, durable, and connected
to user-facing docs.
Follow idiomatic Go docs. Exported packages, types, functions, and methods need comments that describe behavior, not implementation trivia. Mention important errors, side effects, concurrency expectations, or compatibility constraints.
reference/example-api.md.Before larger doc changes, review docs/design/, the v1 tag or source archive when older knowledge may matter, site/content/en/docs/contributing/docs-maintenance.md, and references/docs.md for documentation-site patterns and style inspiration.
When migrating older docs, track whether material was retired, already migrated, or still missing. If you uncover a broad docs gap, add a practical follow-up to the project issue tracker or an active design record.
After meaningful site changes, run what the CI docs job runs:
npm --prefix site ci # once, to install dependencies
go run ./cmd/restish-docgen --check # generated regions are not stale
npm --prefix site run social-images # social preview images build
hugo --source site --quiet --gc --minify --cacheDir /tmp/hugo_cache
scripts/check-doc-links.rb # internal links resolve
scripts/check-doc-examples.rb # restish-example shortcodes are valid
A plain hugo --source site --quiet is a fine quick check while iterating.
npm run social-images parses front matter across content/en and can fail
independently of Hugo, so run it for blog and front-matter changes even when
the quick Hugo check passes.
When touching site JavaScript or interactive examples (playground, query
runner, docs interactions), also run npm --prefix site test; CI does not
run it in the docs job.
Also verify new links, check examples against current CLI behavior, grep touched docs for stale api.example.com placeholders and leftover Source material: sections, and prefer examples that can later be validated against api.rest.sh or promoted into tests.