agent-skills
AGENTS.md7 starsChanged 21 days agoMITView on GitHub
Guidelines for AI agents working in this repository. This is a documentation-only repository containing agent skills -- structured Markdown reference documents designed to be installed into AI coding agents (OpenCode, Claude Code, Copilot, etc.) via the skills.sh ecosystem. There is no application code, no build system, no dependencies, and no tests. Current skills: bun-api, bun-cli, git-commit, git-pr, git-ci, git-project, coderabbit, deps-upgrade. There are none. This repository contains only Markdown files. No package.json, no CI/CD, no linter configuration, no test runner.
Where files are headingNew AGENTS.md files have more rules about keeping secrets out of the code, and fewer about code style.
Of the AGENTS.md files we read, the 31,774 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository8 other files it gives its agents.
- bun-apiSkill
- bun-cliSkill
- coderabbitSkill
- deps-upgradeSkill
- git-ciSkill
- git-commitSkill
- git-projectSkill
- git-prSkill
The file
Show its rules and text
We split this AGENTS.md into the rules it gives an agent
14 rules. About 0 are common, 9 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 38
Every skill's SKILL.md must include YAML frontmatter:
- Distinctive: line 88
Do not skip heading levels (no H1 -> H3)
- Distinctive: line 92
Always use fenced code blocks with a language tag:
- Distinctive: line 105
Use Markdown pipe tables for command mappings, flag references, and comparison matrices.
- Distinctive: line 115
Use blockquote format to point to reference files:
- Distinctive: line 125
Avoid italics -- they render poorly in terminal-based agents
- Very specific: line 129
Use --- to separate major conceptual sections within a single document when visual separation helps readability (used sparingly).
- Distinctive: line 137
Concise: Every sentence should earn its place.
- Distinctive: line 141
No emojis: Do not use emojis in any skill content.
- Distinctive: line 145
Every skill that documents a CLI's flags records the version it was verified against, in two places that must agree:
- Very specific: line 158
Frontmatter
name: Must match the directory name exactly - Very specific: line 162
Create skills/<skill-name>/SKILL.md with proper YAML frontmatter
- Distinctive: line 164
Add reference files for each major sub-topic
- Very specific: line 166
Update README.md to include the new skill in the "Available Skills" table with its install command: bunx skills add dmythro/agent-skills …
≈ “Common” is an estimate: at least 1 in 5 of the 40,246 AGENTS.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
AGENTS.md
Guidelines for AI agents working in this repository.
Repository Overview
This is a documentation-only repository containing agent skills -- structured Markdown reference documents designed to be installed into AI coding agents (OpenCode, Claude Code, Copilot, etc.) via the skills.sh ecosystem. There is no application code, no build system, no dependencies, and no tests.
Structure
skills/
<skill-name>/
SKILL.md # Main entry point (has YAML frontmatter)
references/
<topic>.md # Deep-dive reference documents
allowlist.md # Tool permission patterns (optional)Current skills: bun-api, bun-cli, git-commit, git-pr, git-ci, git-project, coderabbit, deps-upgrade.
Build / Lint / Test Commands
There are none. This repository contains only Markdown files. No package.json,
no CI/CD, no linter configuration, no test runner.
To validate changes, manually review Markdown rendering. If adding links, verify they point to valid targets.
Content Style Guidelines
SKILL.md Files (Main Entry Points)
Every skill's SKILL.md must include YAML frontmatter:
---
name: skill-name
description: >-
What the skill covers, when to use it, and when not to use it.
No trailing period. Use YAML folded scalar (>-) for multi-line
---name: kebab-case, matches the directory namedescription: concise, plain text, no trailing period. Use YAML>-(folded scalar) for multi-line. Include trigger guidance (when to use / not use) since skills.sh uses this field for auto-loading decisions
Document Structure
- H1 heading immediately after frontmatter -- matches the skill's subject
- Opening paragraph -- bold, concise, establishes context and scope
- Version pin (skills that drive a CLI) -- a bold
**Verified against <tool> vX.Y.Z** (YYYY-MM-DD)line right after the opening paragraph, naming what was checked and what to do when the installed version is newer - "When to Use" section -- bullet list of triggering scenarios
- "Critical Rule" or "Critical Rules" section -- bold, imperative, must-follow constraints
- Major topic sections (H2) covering the skill's API/CLI surface
- Key Gotchas / Best Practices -- a numbered list at the end; use either name (most skills use
## Key Gotchas) - References -- blockquote pointers to
references/*.mdfiles
Reference Files (references/*.md)
- No YAML frontmatter
- H1 title matching the topic
- H2 for each major function, command, or concept
- H3 for sub-topics within those
- Deeper detail than SKILL.md; meant to be loaded on demand
Allowlist Files (references/allowlist.md)
- H1 title "Suggested Allowlist Patterns"
- H2 sections: "Recommended: Broad Patterns" (complete copy-paste JSON config), optional "Alternative: Strict Exact Patterns", and "Not Included" (manual approval)
- JSON code blocks with
Bash(command:*)permission patterns - "Not Included" section explaining what requires manual approval and why
Formatting Conventions
Headings
- H1 (
#) for document title only -- one per file - H2 (
##) for major sections - H3 (
###) for subsections within H2 - Do not skip heading levels (no H1 -> H3)
Code Blocks
Always use fenced code blocks with a language tag:
typescriptfor TypeScript/JavaScript codebashfor shell commandstomlfor Bun/config TOML filesjsonfor JSON configurationyamlfor YAML frontmatter examples
Code blocks should be practical, copy-paste-ready, and include inline comments where the behavior is non-obvious.
Tables
Use Markdown pipe tables for command mappings, flag references, and comparison matrices. Align columns for readability in source.
Lists
- Bullet lists for use cases, features, and unordered items
- Numbered lists for sequential steps, best practices, and ranked items
Cross-References
Use blockquote format to point to reference files:
> **Reference**: See `references/file-io.md` for full API detailsEmphasis
- Bold for critical rules, key terms, and callouts
Inline codefor commands, filenames, function names, and config keys- Avoid italics -- they render poorly in terminal-based agents
Horizontal Rules
Use --- to separate major conceptual sections within a single document
when visual separation helps readability (used sparingly).
Writing Style
- Tone: Direct, imperative, practical. No filler, no hedging.
- Audience: AI coding agents, not humans. Be precise and unambiguous.
- Code-first: Show the code, then explain if needed. Not the reverse.
- Concise: Every sentence should earn its place. Remove anything that does not help an agent produce correct code.
- Opinionated: State the best practice directly. Do not present multiple options without a clear recommendation.
- No emojis: Do not use emojis in any skill content.
Tool Version Pins
Every skill that documents a CLI's flags records the version it was verified against, in two places that must agree:
- The skill's
SKILL.mdpin line (see Document Structure) - The Tool Versions table in
README.md
Verify against the tool itself, not memory or web docs: diff --help of every subcommand the skill uses, and read the changelog entries between the old pin and the new version. Update the pin only for what was actually checked; a tool that was not verified says so (not verified) instead of carrying a guessed version. When a new release changes behavior, tag the affected text with the version (gh >= 2.97, v0.8.2) so older installs still read correctly.
State version differences, not just the latest behavior: where a release changed something, give both sides ("1005 on 1.4.4; 1.4.3 reported 1000"), and list the regressions each release fixes so an agent upgrades instead of working around them. A skill for a tool that ships often (Bun) keeps a Version Guide table right after its pin line, one row per release of the current line: what it adds, what it changes under existing code, and when upgrading to it pays off -- or why to skip it.
Naming Conventions
- Skill directories:
kebab-case(e.g.,bun-api,git-commit) - Reference files:
kebab-case.md(e.g.,file-io.md,shell-and-process.md) - Frontmatter
name: Must match the directory name exactly
Adding a New Skill
- Create
skills/<skill-name>/SKILL.mdwith proper YAML frontmatter - Create
skills/<skill-name>/references/directory - Add reference files for each major sub-topic
- Optionally add
references/allowlist.mdfor tool permission patterns - Update
README.mdto include the new skill in the "Available Skills" table with its install command:bunx skills add dmythro/agent-skills --skill <name>ornpx skills add dmythro/agent-skills --skill <name>
Common Mistakes to Avoid
- Missing language tags on code blocks -- always specify the language
- Overly verbose explanations -- agents need facts, not tutorials
- Inconsistent frontmatter --
namemust be kebab-case,descriptionmust not end with a period - Broken cross-references -- verify
references/*.mdpaths exist - Skipping heading levels -- go H1 -> H2 -> H3, never skip
- Including non-Markdown files -- this repo is Markdown-only
- Forgetting README.md updates -- every new skill needs a table entry, and every CLI re-verification updates the Tool Versions table
License
MIT. See LICENSE in the repository root.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
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.

