Get the FREE Ultimate OpenClaw Setup Guide →

readme-maintainer

Scanned
npx machina-cli add skill saadjs/agent-skills/readme-maintainer --openclaw
Files (1)
SKILL.md
3.1 KB

README Maintainer

Goal

Create or update README.md so it accurately reflects the current project setup. Only include information you can verify from the repository contents. Ask brief questions if critical information is missing.

Workflow

  1. Scan the repository for sources of truth.
  • README: README.md
  • Package managers: package.json, pnpm-lock.yaml, yarn.lock, package-lock.json
  • Python: pyproject.toml, requirements.txt, Pipfile
  • Go: go.mod
  • Rust: Cargo.toml
  • Ruby: Gemfile
  • PHP: composer.json
  • Java/Kotlin: pom.xml, build.gradle, build.gradle.kts
  • Build/test tasks: Makefile, justfile, Taskfile.yml, CI workflows under .github/workflows/
  • Containers: Dockerfile, docker-compose.yml
  • Env samples: .env.example, .env.sample, .env.template, config/*.example, *.env
  • Contribution: CONTRIBUTING.md
  • License: LICENSE, LICENSE.*, COPYING
  • Changelog: CHANGELOG.md, CHANGELOG.*, RELEASES.md
  1. Decide what to include.
  • If a section is not supported by evidence, omit it.
  • If a section is required but the repo lacks details (e.g., no usage info), ask the user a focused question instead of guessing.
  • Preserve existing sections, tone, and badges unless they are incorrect. Update in place when possible.
  1. Build or update sections using verified data.
  • Install: infer package manager from lockfiles. Example: pnpm-lock.yaml -> pnpm install; yarn.lock -> yarn install; package-lock.json -> npm install. For Python, use poetry install only if pyproject.toml specifies Poetry; otherwise use pip install -r requirements.txt if present.
  • Usage: derive from package.json scripts (e.g., dev, start, build), CLI entry points, Makefile targets, or existing docs.
  • Env vars: list keys from .env.example or similar files. Provide descriptions only if present in comments or docs; otherwise leave descriptions blank or say "Required".
  • Testing: use package.json scripts (test, lint) or standard commands inferred from repo files (pytest, go test, cargo test) only if those tools are clearly used in the repo.
  • Contributing: link to CONTRIBUTING.md if present; otherwise omit.
  • License: link to the license file. Name the license only if the file explicitly states it.
  • Changelog: link to CHANGELOG.md or equivalent if present.
  1. Validate the README.
  • Ensure commands match actual scripts and tooling in the repo.
  • Remove outdated instructions.
  • Keep it concise and skimmable.

Output expectations

  • Update or create README.md only.
  • Do not add new policy files or templates.
  • If questions are needed, ask them before writing or changing major sections.

Source

git clone https://github.com/saadjs/agent-skills/blob/main/skills/readme-maintainer/SKILL.mdView on GitHub

Overview

The readme-maintainer automatically creates or updates README.md by scanning the repository for verified sources of truth. It only includes sections that have evidence (install, usage, env vars, testing, contributing, license, changelog) and preserves the existing tone and badges when possible.

How This Skill Works

It scans defined sources of truth such as README.md, package managers and lockfiles, Python and other language manifests, env samples, license files and changelogs. It derives install instructions from detected lockfiles or language tooling, builds usage from scripts or CLI entry points, and adds sections only when evidence exists. The result is a concise, accurate README that reflects the current project setup.

When to Use It

  • README.md is missing or removed
  • The README is outdated relative to package.json, go.mod, or other manifests
  • New env vars or env sample files exist that should be documented
  • License or changelog files have changed and should be reflected
  • Contributing, testing, or usage details are present in repo and should be surfaced in docs

Quick Start

  1. Step 1: Run readme-maintainer on the repository to generate or update README.md
  2. Step 2: Review sections added or updated based on verified evidence
  3. Step 3: Commit and push the updated README.md to the repo

Best Practices

  • Only include sections with verifiable evidence
  • Preserve existing tone and badges when the content is still accurate
  • Infer install and usage from actual lockfiles, scripts, or Makefile targets
  • Omit any sections where evidence is missing or unclear
  • Review generated README for accuracy against repo before committing

Example Use Cases

  • Node.js project with package.json and yarn.lock plus an env sample; README updates install and usage sections
  • Python project with pyproject.toml and requirements.txt plus CHANGELOG.md; README includes install, usage, and changelog sections
  • Go project with go.mod and LICENSE; README reflects build and test commands and license
  • Rust project with Cargo.toml and CHANGELOG.md; README includes build and test commands and changelog
  • Web app with Dockerfile and .env.example plus CONTRIBUTING.md; README adds docker usage, env vars, and contributing sections

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers