agentleFS
omega1119omega1119/groundwork/.github/skills/readme-writer/SKILL.md

readme-writer

Skill0 starsChanged 7 days agoMITView on GitHub

Use when creating or updating a README, or whenever a change affects how a project is installed, configured, run, tested or deployed. Owns the README contract, the per-stack quickstart blocks (Python venv, notebooks, Node, static site, Azure web app, Docker, infrastructure as code) and the rule that every documented command must be executed before it is written down.

  • Installs packages

We split this skill into the rules it gives an agent

4 rules. 0 are common, 4 are distinctive, and 0 are very specific to this project.

  • 0

    Common

    Most of the 17 edited versions we read keep these.

  • 4

    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
  1. Distinctive:

    Run the commands: Every line in Quickstart, Usage and Development gets executed in the terminal before it goes in the file.

    line 18
  2. Distinctive:

    Keep it short. A single-script project has a README of about 40 lines.

    line 24
  3. Distinctive:

    Verify, from a clean state, in the terminal:

    line 47
  4. Distinctive:

    Every command can be pasted without editing, except values that are genuinely per-user (an API key, a subscription ID).

    line 89

“Common” is measured: kept by at least 6 in 10 of the 17 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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

README writer

A README is a contract with a stranger holding a fresh clone and no context. It succeeds only if they get to a running project without asking a question.

Operating rules

  1. Start from templates/README.template.md. Same sections, same order. Do not improvise a structure.
  2. Every placeholder gets a real value. No <project name>, no TODO, no "coming soon". If a section does not apply, write one line saying so and why, for example "No configuration. The script takes everything from the command line."
  3. Run the commands. Every line in Quickstart, Usage and Development gets executed in the terminal before it goes in the file. This is the whole point of the skill.
  4. Read the code for the real values. Entry point filename, the actual CLI flags from the argparse block, the env vars the code reads, the port the server binds, the Python version in .python-version or pyproject.toml. Never write these from memory.
  5. Both platforms for activation. macOS/Linux and Windows PowerShell, always.
  6. Keep it short. A single-script project has a README of about 40 lines. Length is not thoroughness.
  7. No em dashes.

Workflow

Creating a README

  1. Establish the facts. Do not guess any of them:

    python3 --version
    node --version 2>/dev/null
    ls -a                                   # what is actually in the root
    cat pyproject.toml requirements.txt package.json 2>/dev/null
    grep -n "argparse\|add_argument\|os.environ\|getenv" -r . --include=*.py | head -30
  2. Copy templates/README.template.md to README.md.
  3. Paste the matching block from templates/quickstart/ into the Quickstart section, then substitute the real values into it.
  4. Fill the rest of the sections. Delete optional sections that do not apply rather than leaving them empty.
  5. Verify, from a clean state, in the terminal:

    python3 scripts/readme_check.py
  6. Then actually walk it. The high-value check is deleting .venv/ and running the quickstart start to finish. Do it whenever the setup story changed.

Updating a README

Triggered by: a new dependency, a new env var, a renamed entry point, a new test command, a changed port, a new deploy step, a bumped language version.

Change the affected lines and re-run them. Do not rewrite sections you did not touch.

The contract

Required sections, in this order:

SectionMust contain
# NameThen one paragraph, plain English, what it does and for whom. No preamble.
## RequirementsExact versions, and how to check each one.
## QuickstartClone to running, copy-pasteable, both platforms. Ends with what success looks like.
## UsageThe real invocations with real arguments, and the output shape.
## Project layoutA table or tree of the files that matter. Not every file.
## ConfigurationEvery env var: name, what it does, default, required or not. Or "None".
## DevelopmentTests, lint, formatting. The exact commands.

Optional, in this order after the above: ## Deployment, ## How it works, ## Troubleshooting, ## Roadmap, ## License.

## Troubleshooting earns its place the moment you hit an error while verifying. If the setup broke for you, it will break for them. Write down the error text and the fix.

Quickstart quality bar

A quickstart passes if all of these hold:

  • It starts from git clone and ends with something observable: a URL, a printed line, a written file.
  • Every command can be pasted without editing, except values that are genuinely per-user (an API key, a subscription ID). Those are visibly marked and explained in Configuration.
  • The interpreter or runtime version is stated, and the command to install or check it is given.
  • Environment setup is separated from running, so a returning reader can skip to the run.
  • It tells the reader what success looks like: "prints Ready on http://127.0.0.1:8000".

Per-stack blocks

Copy from templates/quickstart/:

FileUse for
python-venv.mdAny Python script, CLI or library.
notebook.mdJupyter, including kernel registration and output stripping.
static-site.mdA single HTML page or a plain HTML/CSS/JS site.
node-web.mdNode, Vite, Next, anything with package.json.
docker.mdAnything containerised.
azure-webapp.mdDeployed to Azure App Service or Container Apps.
iac.mdAn infra/ folder in Bicep or Terraform.

Failure modes seen in the wild

  • Documenting pip install -r requirements.txt when the file does not exist. Create the file or change the line.
  • source .venv/bin/activate on a repo whose venv is at env/. Match reality.
  • python instead of python3 on macOS, where bare python is often missing.
  • A port number that came from a different project.
  • A ## Configuration table listing env vars the code never reads, or missing one it requires and crashes without.
  • Notebook instructions with no kernel step, so the reader opens a notebook that cannot execute.
  • An npm run dev that is not in package.json scripts.

Download now (ZIP)

  • Other versions21 projects use a version of this.

    Word for word · 0

    None found.

    Edited · 0

    None found.

    Wrote their own version · 21

    1. event-driven-io/emmett★ 558same name
    2. OneByJorah/VirtOffice★ 23same name
    3. OneByJorah/offivo★ 17same name
    4. nseney1/Aegis-Guardrails★ 4same name
    5. nseney1/Soma-Governance★ 4same name
    6. shimo4228/claude-harness★ 4same name
    7. WST2002/claude-code-skills★ 3same name
    8. guihai24/openskills★ 2same name
    9. brpaz/agent-skills★ 1same name
    10. ChenYiming-aaa/readme-writer★ 1same name

    11 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.

  • Used alongsideProjects with it also use security-audit.

    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.
    • CloudflareSkill

      security-audit

      Security guidance and vulnerability review for codebases, APIs, services, CLI tools, libraries, and daemons. Use for security questions, focused reviews, vulnerability research, security audits, or pen tests. Run the complete workflow only for explicit codebase audit or pen-test requests, full/comprehensive/end-to-end reviews, or requested report artifacts.

      Also in 3 projects that use this

  • In this repository8 other files it gives its agents.

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

Reviews can't be read right now.

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.