skills
AGENTS.md2 starsChanged 3 months agoMITView on GitHub
This repository contains agent skills and TypeScript CLI packages. Each standalone skill is self-contained in skills/<skill-name>/: SKILL.md is the entry point, agents/openai.yaml contains agent metadata when needed, and references/ or rules/ holds supporting material. Keep a skill's documentation and its supporting files in that directory. CLI packages live in packages/; packages/agent-notes/ contains the Notes CLI, stable document contracts, runtime and installable skill assets. Install those assets through the CLI. Root configuration lives in package.json, pnpm-workspace.yaml, tsconfig.json, and eslint.config.js. When maintaining…
- Commits and pushes
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 repository7 other files it gives its agents.
- skills/goal-loop/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- documentation-authoringSkill
- goal-loopSkill
- init-agents-mdSkill
- mobile-interface-designSkill
- product-interface-designSkill
The file
We split this AGENTS.md into the rules it gives an agent
8 rules. About 0 are common, 5 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈5
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 14
When maintaining Agent Notes, read its package guidelines for the product constraints, contract references and change-specific validation.
- Very specific: line 17
Use lowercase kebab-case for skill directories and related files, for example skills/product-interface-design/.
- Distinctive: line 32
Do not rely on it to check documentation changes.
- Distinctive: line 36
Write TypeScript as strict ESM and follow the Antfu ESLint configuration.
- Distinctive: line 38
Prefer focused edits over unrelated formatting changes.
- Very specific: line 46
Use pnpm lint for all changes and run the TypeScript check and relevant Vitest tests for code changes.
- Distinctive: line 79
If npm fails, preserve the version edit and investigate before retrying.
- Very specific: line 86
Follow the established Conventional Commit style: feat: add ..., docs(skill-name): update ..., or chore(skills): remove ....
≈ “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
Repository Guidelines
Project Structure & Module Organization
This repository contains agent skills and TypeScript CLI packages. Each standalone skill is self-contained in
skills/<skill-name>/: SKILL.md is the entry point, agents/openai.yaml
contains agent metadata when needed, and references/ or rules/ holds
supporting material. Keep a skill's documentation and its supporting files in
that directory. CLI packages live in packages/; packages/agent-notes/
contains the Notes CLI, stable document contracts, runtime and installable skill
assets. Install those assets through the CLI. Root configuration lives in
package.json, pnpm-workspace.yaml, tsconfig.json, and eslint.config.js.
When maintaining Agent Notes, read its package guidelines for the product constraints, contract references and change-specific validation.
Use lowercase kebab-case for skill directories and related files, for example
skills/product-interface-design/. Keep Markdown links relative to the file
that owns them.
Install, Lint, and Type-Check
pnpm installinstalls dependencies using the package manager pinned inpackage.json.pnpm lintruns ESLint across the repository. It intentionally ignoresskills/**, so validate changed Markdown and YAML links manually.pnpm exec tsc --noEmittype-checks TypeScript with the repository's strict compiler settings. Run it when changing TypeScript or its configuration.pnpm testruns package tests with Vitest.pnpm --filter @hackycy/agent-notes buildbuilds the standalone Notes CLI.
The pre-commit hook verifies the frozen lockfile and runs lint-staged with ESLint. Do not rely on it to check documentation changes.
Coding and Documentation Style
Write TypeScript as strict ESM and follow the Antfu ESLint configuration. Match the existing two-space indentation, single quotes, and no-semicolon style. Prefer focused edits over unrelated formatting changes.
For skills, begin SKILL.md with YAML frontmatter containing a stable name
and precise description, then use concise Markdown headings. Put optional,
on-demand detail in references/ rather than duplicating it in the entry point.
Testing Guidelines
Use pnpm lint for all changes and run the TypeScript check and relevant Vitest
tests for code changes. Manually verify skill links, referenced paths, and
examples. For Notes distribution changes, pack the actual package and run
pnpm --filter @hackycy/agent-notes test:bundle <absolute-cli-path> against its
extracted CLI outside the checkout; the test accepts an optional Node executable
and another version's CLI for upgrade/downgrade checks. No coverage threshold is
configured.
CLI Releases
Release only when explicitly requested. Run locally from a clean working tree
with npm publish access and Git push access to origin. Each CLI versions
independently; the root stays private. The entry point discovers public packages
with bin under packages/ and releases only the selected CLI.
pnpm release
pnpm release --package @hackycy/agent-notes
pnpm release --package @hackycy/agent-notes --version 0.2.0 --yesOmitted package names prompt for a CLI, or select the only candidate. Omitted
versions use bumpp's native prompt; --yes skips its confirmation. CI and
non-terminal callers must supply --package, --version, and --yes.
bumpp updates only the selected manifest, then runs npm publish in that
package using its existing publish configuration and prepack build. After
npm returns success, bumpp creates chore(release): <name>@<version> and the
<name>@<version> tag. The entry point atomically pushes the current branch and
that tag to origin. CHANGELOG history is left as-is; GitHub Releases are not
created. Lint, type checking and tests remain development checks rather than
release gates; run pnpm test:release when changing release behavior.
If npm fails, preserve the version edit and investigate before retrying. If Git fails after npm returns success, finish the reported Git step manually rather than rerunning publication. The script preserves the current state without automatic rollback or recovery.
Commits and Pull Requests
Follow the established Conventional Commit style: feat: add ...,
docs(skill-name): update ..., or chore(skills): remove .... Use an optional
scope for the affected skill or area and write an imperative summary.
Pull requests should state the user-facing effect, list validation performed, and link the relevant issue when one exists. Include screenshots only when a change affects rendered UI or visual assets. Keep generated files, local skill installations, and secrets out of commits.
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.

