Source profileQuality 96/100Review permissions

event4u-app/agent-config/src/skills/readme-writing-package/SKILL.md

readme-writing-package

Use when creating or rewriting a README for a reusable package or library. Focus on installability, minimal usage example, compatibility, and developer onboarding.

Source repository stars
9
Declared platforms
0
Static risk flags
2
Last source update
2026-08-28
Source checked
2026-08-28

Decision brief

What it does: where it fits

Focus on installability, minimal usage example, compatibility, and developer onboarding.

Best for

  • Creating a README for a package, library, SDK, or framework extension
  • Rewriting a package README after major changes (new API, version bump, new registry)
  • Improving a weak package README (missing install, no example, no compatibility info)

Not for

  • Tasks that require unconfirmed production actions or broad system permissions.
  • Environments where the pinned source and install steps cannot be inspected.

Compatibility matrix

Platform support, with evidence labels

PlatformStatusEvidenceWhat to check
CodexNot declaredNo explicit evidencePortability before use
Claude CodeNot declaredNo explicit evidencePortability before use
CursorNot declaredNo explicit evidencePortability before use
Gemini CLINot declaredNo explicit evidencePortability before use
Open the compatibility checker

Installation

Inspect first. Install second.

The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

Source-detected install commandSource
npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/readme-writing-package"
Safe inspection promptEditorial

Inspect the Agent Skill "readme-writing-package" from https://github.com/event4u-app/agent-config/blob/6a5670b7881a676c0da90d2afb950298087c4ccb/src/skills/readme-writing-package/SKILL.md at commit 6a5670b7881a676c0da90d2afb950298087c4ccb. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

Workflow

What the source asks the agent to do

  1. 01

    Procedure

    Before drafting, produce an evidence ledger from a fresh inspection of the package — manifest, source, CI, examples. Do not rely on prior turns or the existing README prose.

    Manifest: composer.json, package.json, pyproject.toml, Cargo.toml, go.mod, or .gemspec — name, description, requirements, scriptsSource entrypoints — public API surface, main classes/functionsConfig files — publishable configs, defaults
  2. 02

    When to use

    Creating a README for a package, library, SDK, or framework extension

    Creating a README for a package, library, SDK, or framework extensionRewriting a package README after major changes (new API, version bump, new registry)Improving a weak package README (missing install, no example, no compatibility info)
  3. 03

    Goal

    Package README that makes adoption easy. A developer should know within 30 seconds: what it does, whether it fits their stack, how to install it, and how to use it.

    Package README that makes adoption easy. A developer should know within 30 seconds: what it does, whether it fits their stack, how to install it, and how to use it.
  4. 04

    Core principles

    User adoption over internal architecture — consumer first, maintainer second

    User adoption over internal architecture — consumer first, maintainer secondInstall + first example = most important sections — everything else is secondaryCompatibility must be explicit — don't imply broad support without evidence
  5. 05

    0. Re-analysis gate — MANDATORY before any writing

    Before drafting, produce an evidence ledger from a fresh inspection of the package — manifest, source, CI, examples. Do not rely on prior turns or the existing README prose.

    Before drafting, produce an evidence ledger from a fresh inspection of the package — manifest, source, CI, examples. Do not rely on prior turns or the existing README prose.If any cell is unknown, run ls, grep, find, or read the file before writing — never invent. When the user asks to keep the existing banner or badge row, reproduce it byte-for-byte from the source.

Permission review

Static risk signals and limitations

Reads files

low · line 52

The documentation asks the agent to read local files, directories, or repositories.

If any cell is unknown, run `ls`, `grep`, `find`, or read the file before

Runs scripts

medium · line 164

The documentation asks the agent to run terminal commands or scripts.

npm install <package>

Runs scripts

medium · line 165

The documentation asks the agent to run terminal commands or scripts.

pnpm add <package>

Evidence record

Why each signal appears

EvidenceSourceComputedTestedEditorial
SignalValueEvidence typeMeaning
Quality score96/100ComputedDocumentation, specificity, maintenance, and trust rules
Repository stars9SourceRepository attention, not individual Skill quality
Compatibility0 platformsSourceDeclared in the catalog source record
Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

Pinned source

Provenance and original SKILL.md

Repository
event4u-app/agent-config
Skill path
src/skills/readme-writing-package/SKILL.md
Commit
6a5670b7881a676c0da90d2afb950298087c4ccb
License
MIT
Collected
2026-08-28
Default branch
main
View the original SKILL.md

readme-writing-package

When to use

  • Creating a README for a package, library, SDK, or framework extension
  • Rewriting a package README after major changes (new API, version bump, new registry)
  • Improving a weak package README (missing install, no example, no compatibility info)
  • Documenting a package for Packagist, npm, or internal registries

Do NOT use when:

  • Documenting a full application, CLI tool, or internal team repo → use readme-writing instead
  • Only fixing minor typos or updating a single section
  • Writing deep reference docs that belong in /docs

Goal

Package README that makes adoption easy. A developer should know within 30 seconds: what it does, whether it fits their stack, how to install it, and how to use it.

Core principles

  • User adoption over internal architecture — consumer first, maintainer second
  • Install + first example = most important sections — everything else is secondary
  • Compatibility must be explicit — don't imply broad support without evidence
  • First code example must be real, minimal, and verified — no pseudo-code
  • README = onboarding, /docs = reference — keep README focused
  • Re-analyze every time — never write from cached knowledge; verify the manifest, source, and CI matrix in this session
  • Preserve existing visual identity — banner, badges, hero images, and logo lockups stay byte-identical unless the user explicitly asks to change them

Procedure

0. Re-analysis gate — MANDATORY before any writing

Before drafting, produce an evidence ledger from a fresh inspection of the package — manifest, source, CI, examples. Do not rely on prior turns or the existing README prose.

ledger:
  package:       <name + version from manifest>
  description:   <verbatim from manifest>
  install_cmd:   <verified against the manifest's package manager>
  requirements:  <language version, framework version, ext-*, services>
  public_api:    <entry classes / functions / exports from source>
  test_command:  <real command from manifest scripts / Taskfile>
  doc_targets:   <list of /docs files actually linked from the new draft>
  visual_keep:   <line range of existing README header / banner / badges to preserve>

If any cell is unknown, run ls, grep, find, or read the file before writing — never invent. When the user asks to keep the existing banner or badge row, reproduce it byte-for-byte from the source.

1. Identify package type and audience

TypeAudienceREADME focus
LibraryAny developerInstall → Usage → API surface
Framework extensionFramework usersRequirements → Install → Register → Use
PluginPlugin host usersCompatibility → Install → Config → Use
SDKAPI consumersAuth → Install → First request → Response handling
Internal shared packageTeam membersPurpose → Install → Integration → Dev workflow

2. Inspect package truth sources

Read and verify files that define actual package behavior (confirm each claim against the source — never paraphrase from memory):

  • Manifest: composer.json, package.json, pyproject.toml, Cargo.toml, go.mod, or *.gemspec — name, description, requirements, scripts
  • Source entrypoints — public API surface, main classes/functions
  • Config files — publishable configs, defaults
  • CI workflows — what gets tested, supported versions matrix
  • Tests — reveal actual API usage patterns
  • CHANGELOG.md / releases — current state, breaking changes
  • Examples directory — if present

Extract: package name, purpose, install command, runtime requirements, supported versions, public API, setup steps, test/lint commands.

3. Choose sections

Priority order for packages:

  1. Title + one-line summary — always
  2. Why / what problem — if not obvious from name
  3. Requirements / compatibility — always (versions, extensions, frameworks)
  4. Installation — always (exact command, post-install steps)
  5. Minimal usage example — always (most important section)
  6. Configuration / setup — if config publish, env vars, or registration needed
  7. More examples / common use cases — if API has multiple entry points
  8. Development / testing — for maintainers/contributors
  9. Contributing — if open or team project
  10. License — if applicable

Skip sections that have no real content. Never pad.

4. Write requirements and compatibility

State only what is tested and supported. Pull the values from the package's manifest, not from memory. Examples per stack:

## Requirements (PHP)

- PHP ^8.2
- Laravel 11.x (optional integration)
- ext-json
## Requirements (JS / TS)

- Node.js >= 20
- TypeScript >= 5.4 (for typed consumers)
- npm / pnpm / yarn / bun
## Requirements (Python)

- Python >= 3.11
- pip / poetry / uv
- Optional: `fastapi >= 0.110` for the FastAPI integration
## Requirements (Go)

- Go >= 1.22
## Requirements (Rust)

- Rust >= 1.78 (stable)
- `cargo` workspace member or standalone crate
## Requirements (Ruby)

- Ruby >= 3.2
- Bundler >= 2.5
- Optional: Rails 7.1+ for the Rails integration

Do NOT imply broad compatibility if only tested in a narrow range. Include language version, framework version, required extensions, and services.

5. Write installation that actually works

Document the exact install command and any required follow-up. Use the package manager native to the stack — never edit manifests by hand.

# PHP / Composer
composer require vendor/package
# Optional Laravel integration:
php artisan vendor:publish --tag=package-config
# JS / TS — pick whichever the consumer uses
npm install <package>
pnpm add <package>
yarn add <package>
bun add <package>
# Python
pip install <package>
poetry add <package>
uv add <package>
# Go
go get github.com/<owner>/<package>@latest
# Rust
cargo add <package>
# Ruby
bundle add <package>
# or, for a standalone gem:
gem install <package>

Validate each step against the actual codebase. Include post-install steps (config publish, service / module / provider registration, env vars, codegen, migrations) if the package requires them.

6. Write the minimal working example

This is the most critical section. Rules:

  • Smallest possible working example — one use case, one result
  • Real API calls, not pseudo-code
  • Copy-pasteable without hidden setup
  • Show expected result or effect if helpful
  • Must match the actual package API (verify against source)

Bad: abstract, large, requires unexplained setup. Good: 5-15 lines, directly relevant, immediately runnable.

7. Keep architecture out of README — use reference-split

Move deep content to dedicated docs. Recommended layout for packages:

README.md              ← entry: what, why, install, minimal usage
docs/
  installation.md      ← full install matrix, post-install steps
  usage.md             ← extended examples, common patterns
  architecture.md      ← internal design, decisions
  api.md               ← full API reference
  migration.md         ← version upgrade guides

For multi-platform install (> 5 variants), prefer a single table with deep links over stacked inline blocks. For occasionally-needed detail (long platform quirks, troubleshooting), use <details> — never for install, first example, or requirements.

→ See docs/guidelines/docs/readme-size-and-splitting.md for thresholds, deep-link-table pattern, collapsibles, and anti-patterns (premature splitting, duplication between README and /docs/).

Per-AI catalog pattern (multi-platform AI / CLI packages)

For packages that target many AI assistants or platforms (CLI installers, agent-config tools, language SDKs with 10+ targets), prefer a flat per-AI catalog over a giant matrix. One line per target, install command on the left, aligned trailing comment naming the platform:

npx <package> init --tools=claude-code      # Claude Code
npx <package> init --tools=cursor           # Cursor
npx <package> init --tools=windsurf         # Windsurf
# ... one line per supported target

Pair the catalog with a separate "Global install" subsection (same flags plus --global) and an "Other commands" subsection. Reference example: README.md § Pick specific AIs in this repository — or any well-structured external skill README that lists per-target install commands in a flat catalog.

Use the catalog when the package's primary install action varies by platform; use a matrix table (Tool / Rules / Skills / Commands) for capability comparison. They serve different jobs — install vs. coverage.

README = enough to adopt. Docs = enough to master.

8. Validate links and detect orphans — MANDATORY

For every internal link in the new draft:

  1. Resolve the path. test -f files, test -d directories. Strip #anchor and ?query before the check.
  2. For every anchor link, grep the target for the heading slug.
  3. Build the link-delta vs. the old README — kept / added / dropped. For every dropped target, search the rest of the repo (grep -r over AGENTS.md, docs/, dist/agent-src*/, packages/). No other reference → mark orphan-candidate.

Surface the orphan-candidate list to the user — never delete silently.

9. Validate

  • Install command is correct and complete
  • Compatibility/requirements match the manifest (composer.json, package.json, pyproject.toml, Cargo.toml, go.mod, *.gemspec) and the CI matrix
  • First example matches real API (verified against source code)
  • All documented commands exist in repo
  • No invented features or capabilities
  • Consumer can get started without reading source code
  • Deep content is in docs, not README (see size guideline)
  • Multi-platform install uses a table, not stacked blocks
  • No duplication between README and /docs/
  • First screen contract — within ~40 lines: name, one-sentence pitch, install command, requirements (or pointer)
  • Banner / badges / hero from Step 0 visual_keep are byte-identical to source
  • Every internal link resolved per Step 8 — zero broken file or anchor links
  • Orphan-candidate list produced even if empty

Output format

  1. Full README draft
  2. Detected package type + audience
  3. Compatibility summary
  4. Link deltakept / added / dropped with orphan-candidates flagged
  5. Evidence ledger (Step 0) so the user can audit assumptions
  6. Uncertainties needing confirmation
  7. Suggested follow-up docs if README would become too large

Gotcha

  • Model writes package READMEs like app READMEs (too much architecture, not enough install/usage)
  • Model tends to invent compatibility claims or setup steps
  • First example is often too large, too abstract, or uses pseudo-code
  • Model over-explains internals before showing how to use the package
  • Existing README may be outdated — verify against the actual manifest (composer.json, package.json, pyproject.toml, Cargo.toml, go.mod, *.gemspec) and source, not the old prose
  • Model forgets post-install steps (config publish, service / module / provider registration, env vars, codegen, migrations) — list whichever the stack requires

Frugality Standards

Apply the Frugality Charter to every package README you author.

Examples in this artifact:

  • Per the charter's default-terse rule, the package README opens with one sentence: what installs, what it does.
  • Per the cite-don't-restate principle, link upstream docs for advanced topics; ship the minimal usage example only.
  • Per the post-action summary suppression, no "What's new" block — that belongs in CHANGELOG.md.

Pre-save self-check:

  1. Does the opening pitch include marketing adjectives?
  2. Is the minimal usage example over 10 lines when 5 would suffice?
  3. Are CI badges shipped without verifying that they resolve?
  4. Does the doc duplicate CHANGELOG content?

Do NOT

  • Do NOT invent package capabilities or compatibility
  • Do NOT skip the minimal working example
  • Do NOT prioritize internal architecture over user onboarding
  • Do NOT document commands not present in the repo
  • Do NOT hide requirements or version constraints
  • Do NOT write a giant example when a 10-line one would do
  • Do NOT overload README with reference material — link to /docs

→ Final prose pass for audience-facing output: humanizer — remove AI-writing tells before delivery.

Frequently asked questions

What to verify before installation and use

What does the readme-writing-package source document cover?

Focus on installability, minimal usage example, compatibility, and developer onboarding.

How do I install readme-writing-package?

The source record exposes this install command: npx skills add https://github.com/event4u-app/agent-config --skill "src/skills/readme-writing-package". Inspect the command and pinned source before running it.

Which permission-related actions were detected?

Static rules flagged read-files, exec-script in the source; the page lists the matching lines and excerpts.

Alternatives

Compare before choosing

Computed 99241

enuno/unifi-mcp-server

unifi-mcp-tool-builder

Specialized guide for adding new MCP tools to the UniFi MCP Server following project standards, UniFi API patterns, and test-driven development practices. Use when implementing new UniFi Network Controller features as MCP tools.

Computed 9916

NintendaDev/unikit-ai

unikit-docs

Generate and maintain the project's TECHNICAL documentation from its codebase — scans the project structure, tech stack, and module boundaries, then writes a lean README landing page plus detailed topic pages (architecture, modules, setup, build, APIs), only the docs that are relevant. Use whenever the user wants to create, update, or validate documentation of the CODE or the project itself, e.g. "generate documentation", "create docs", "write the README", "update the project docs", "document th

Computed 9882

vasilyu1983/AI-Agents-public

research-git

Scans public GitHub repos for agent skills, dev practices, and code patterns. Use when enriching skills, setting team policy, or researching a build domain.

Computed 9867

SerendipityOneInc/ZooData-Skills

zoodata

API endpoint reference for the ZooData data platform: the 12 commerce endpoints plus 10 keyword-intelligence endpoints (categories, markets, products, competitors, realtime ASIN, AI review analysis, raw reviews, price band, brand, history, and the keyword detail/trend/extends/search/ market-profile/product-traffic/competitor-keywords/traffic-profile/ traffic-timeline family) — their inputs/outputs, parameter quirks, Quick Start (auth, base URL), how credits are tracked (meta.creditsConsumed), an