flow-skills
AGENTS.md1 starsChanged 46 days agoMITView on GitHub
Project guidance for agent sessions working in this repository. Global user instructions still apply. The source-of-truth repository for the host-agnostic flow-* skill suite. It is distributed from GitHub through the open skills CLI (npx skills add emiliodominguez/flow-skills), which installs into any supported agent. .claude-plugin/ manifests are an optional plugin-marketplace channel. Nothing is published to npm. skills/<name>/SKILL.md is the source of truth, with optional references/*.md loaded on demand. profiles.json holds install profiles. install.sh / uninstall.sh wrap npx skills add/remove, adding profiles…
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 repository38 other files it gives its agents.
- llms.txtllms.txt
- flow-a11ySkill
- flow-adversarial-reviewSkill
- flow-animateSkill
- flow-apiSkill
- flow-benchmarkSkill
- flow-brainstormSkill
- flow-commitSkill
- flow-data-migrateSkill
- flow-depsSkill
- flow-designSkill
- flow-diagnoseSkill
- flow-docsSkill
- flow-git-fixSkill
- flow-handoffSkill
- flow-migrateSkill
- flow-observeSkill
- flow-onboardSkill
- flow-orchestrateSkill
- flow-planSkill
- flow-pr-fixSkill
- flow-prototypeSkill
- flow-prune-agent-setupSkill
- flow-redesignSkill
- flow-refactorSkill
- flow-releaseSkill
- flow-repo-briefSkill
- flow-reviewSkill
- flow-shipSkill
- flow-simplifySkill
- flow-specializeSkill
- flow-stylesSkill
- flow-testSkill
- flow-triageSkill
- flow-uiSkill
- flow-verifySkill
- flow-workSkill
- flow-write-skillSkill
The file
We split this AGENTS.md into the rules it gives an agent
8 rules. About 0 are common, 2 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 21
Run pnpm check before committing (format check, lint, typecheck, validate, tests with coverage, docs check).
- Very specific: line 31
Keep skills host-agnostic: frontmatter holds only Agent Skills spec fields (normally name and description).
- Very specific: line 38
Every skill needs an entry in evals/beats.json (3-5 lowercase substrings from SKILL.md, text presence only) and in evals/triggers.json (4 …
- Very specific: line 42
Test installs in a throwaway project with ./install.sh --local --project.
- Distinctive: line 47
Add a changeset for each user-facing change (new skills = minor, fixes = patch, renames = major).
- Very specific: line 48
When a version is ready, run pnpm run version:packages (it also syncs .claude-plugin/plugin.json), review the version and changelog, and …
- Distinctive: line 57
Do not use em or en dashes in prose, comments, metadata, or user-facing text.
- Very specific: line 58
Prefer the suite's own skills: flow-plan → flow-work → flow-review → flow-ship.
≈ “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 - flow-skills
Project guidance for agent sessions working in this repository. Global user instructions still apply.
What this is
The source-of-truth repository for the host-agnostic flow-* skill suite. It is distributed
from GitHub through the open skills CLI (npx skills add emiliodominguez/flow-skills), which installs
into any supported agent. .claude-plugin/ manifests are an optional plugin-marketplace channel.
Nothing is published to npm.
Architecture
skills/<name>/SKILL.md is the source of truth, with optional references/*.md loaded on demand.
profiles.json holds install profiles. install.sh / uninstall.sh wrap npx skills add/remove,
adding profiles and legacy ed-* cleanup. src/ is an authoring CLI only (pnpm skills list|validate|new):
src/core/skill.ts parses and validates skills, src/core/distribution.ts checks profiles and manifests.
Required gate
Run pnpm check before committing (format check, lint, typecheck, validate, tests with coverage, docs check).
Whenever a skill changes (body, description, or a new or removed skill), run pnpm docs:gen, inspect
and commit the generated docs, and run pnpm docs:check. Run pnpm smoke for install script or
manifest changes. Check actual hosted CI status; local evidence is required even when Actions is disabled.
Skill authoring
- Scaffold with
pnpm skills new flow-<name>. Keep the anatomy: frontmatter, phased body,## Anti-patterns,## Done when, and a final line naming the next skill. - Keep skills host-agnostic: frontmatter holds only Agent Skills spec fields (normally
nameanddescription); bodies name no host, tool or model and use no host invocation syntax. Refer to other skills by backticked name, for example`flow-verify`. - Descriptions are always in context: aim for about 200 characters, stay under 280, and end with a
handoff clause (
Hands off to,Hands back to,Routes to, orFeeds) naming skills in backticks. The docs skill map is parsed from it. The corpus must stay under 8,000 description characters. - Move situational material to
references/<topic>.mdand say when to read it. - Every skill needs an entry in
evals/beats.json(3-5 lowercase substrings fromSKILL.md, text presence only) and inevals/triggers.json(4 should prompts, 3 near misses). Model evals (eval:triggers,eval:ab) need API configuration and never run in CI. Seeevals/README.md. - Descriptions lead with what the skill is, then
Use whentriggers; never summarize the procedure. - Test installs in a throwaway project with
./install.sh --local --project. Distinguish install checks from real agent sessions.
Versions (changesets)
- Add a changeset for each user-facing change (new skills = minor, fixes = patch, renames = major).
- When a version is ready, run
pnpm run version:packages(it also syncs.claude-plugin/plugin.json), review the version and changelog, and commit them.
Conventions
- Conventional commits (
feat:,fix:,chore:,docs:,refactor:,test:,build:,ci:). NoCo-Authored-Bytrailers. - Function declarations over arrow functions. Tabs (width 4), print width 150. JSDoc on every
src/function (@param,@returnswhere non-void); eslint enforces it. - Do not use em or en dashes in prose, comments, metadata, or user-facing text. Use an ASCII hyphen.
- Prefer the suite's own skills:
flow-plan→flow-work→flow-review→flow-ship;flow-depsfor dependency bumps;flow-commitfor commit authoring.
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.

