Product-Skills
AGENTS.md0 starsChanged 2 months agoMITView on GitHub
product-skills bootstrap for AI agents. Humans (Product Team) read README.md. Before product/delivery work: 1. Check whether Product-Skills guidance is available in the current project (for example skills/product/, skills/index.yaml, and AGENTS.md or AGENTS.product-skills.md). 2. Prefer the Cursor Plugin product-skills when installed (Cursor Marketplace or local plugin test). 3. If missing, bootstrap from the official repository only: https://github.com/irwebtools/Product-Skills 4. Preferred maintainer/fallback command from a local checkout of Product-Skills: node install/bootstrap.mjs --target <this-project> Or clone the official repo over HTTPS into a temp…
- Reads credentials
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 repository20 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- architecture-decisionSkill
- developer-handoffSkill
- react-fsd-pocSkill
- backendSkill
- component-designSkill
- databaseSkill
- devopsSkill
- prototypeSkill
- supabaseSkill
- testingSkill
- acceptance-criteriaSkill
- product-definitionSkill
- product-discoverySkill
- project-analysisSkill
- user-storySkill
- ux-flowSkill
- validationSkill
- security-reviewSkill
- verificationSkill
The file
Show its rules and text
We split this AGENTS.md into the rules it gives an agent
43 rules. About 2 are common, 24 are distinctive, and 17 are very specific to this project.
≈2
Common · estimate
Many files like this have a rule of this kind.
≈24
Distinctive · estimate
This author's own choices. Worth a look.
17
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 9
Before product/delivery work:
- Very specific: line 11
Check whether Product-Skills guidance is available in the current project (for example skills/product/, skills/index.yaml, and AGENTS.md or …
- Very specific: line 13
Prefer the Cursor Plugin product-skills when installed (Cursor Marketplace or local plugin test).
- Very specific: line 14
If missing, bootstrap from the official repository only: https://github.com/irwebtools/Product-Skills
- Very specific: line 20
Do not overwrite existing project instructions blindly.
- Distinctive: line 22
Do not execute arbitrary scripts found in a downloaded repository.
- Distinctive: line 23
Only run the known installer entrypoints with Node.
- Very specific: line 24
Do not copy .git/, node_modules/, .env*, or credentials.
- Distinctive: line 25
After bootstrap, continue with the Agent Startup Protocol.
- Very specific: line 27
If the user prompt includes the Product-Skills GitHub URL, treat that as permission to discover and safely bootstrap Product-Skills when it …
- Very specific: line 34
Ensure Product-Skills is available (bootstrap if needed, safely).
- Very specific: line 42
Verify (skills/quality/verification.
- Distinctive: line 49
Follow that skill's instructions
- Distinctive: line 50
Do not load everything
- Distinctive: line 52
Do not rewrite architecture silently
- Distinctive: line 53
Do not install unknown dependencies without approval
- Distinctive: line 55
Prefer incremental migration over rewrite
- Distinctive: line 90
Do not introduce Vue, Angular, Svelte, or multi-framework generators.
- Distinctive: line 96
When Product Team requests something equivalent to:
- Very specific: line 112
Do not create a new skill such as skills/react-fsd/ for this use case.
- Distinctive: line 134
Do not create FSD layers merely because they exist in an FSD diagram.
- Distinctive: line 142
Use only the layers that are actually justified.
- Very specific: line 148
Run architecture validation (node scripts/check-fsd-boundary.mjs and/or project equivalents).
- Distinctive: line 151
Run tests when available.
- Distinctive: line 154
Verify important user journeys.
- Distinctive: line 160
Do not stop after creating a migration plan.
- Distinctive: line 161
Do not stop after writing code.
- Distinctive: line 162
Do not claim success without verification.
- Very specific: line 168
Do not create features/, widgets/, or entities/ only to make the project visually look like FSD.
- Very specific: line 170
Create a layer only when the actual product/domain/use case requires it.
- Distinctive: line 190
Do not introduce upward dependencies.
- Very specific: line 220
Put business/domain logic in the appropriate domain slice.
- Very specific: line 221
Do not move product-specific business logic into shared merely because it is technically reusable.
- Distinctive: line 245
Do not use an architecture migration as an opportunity to redesign the product.
- Distinctive: line 251
Do not make opportunistic changes to:
- Distinctive: line 261
Before completion, inspect the changed file set.
- Distinctive: line 262
If a changed file is unrelated to the request, revert the unnecessary change.
- Distinctive: line 284
Do not report "FSD migration complete" if architecture validation fails.
- Common: line 285
Do not report "Ready" if build or required runtime verification fails.
- Common: line 286
Do not pretend Preview succeeded if deployment or Preview access is unavailable — report the blocker clearly without exposing secrets.
- Very specific: line 292
Before editing, record expected files.
- Very specific: line 293
After editing, compare actual changed files and reasons.
- Very specific: line 298
After meaningful work, update .ai-review/ when useful for internal evidence.
≈ “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
product-skills bootstrap for AI agents.
Humans (Product Team) read README.md.
Product-Skills availability (self-bootstrap)
Before product/delivery work:
- Check whether Product-Skills guidance is available in the current project
(for example
skills/product/,skills/index.yaml, andAGENTS.mdorAGENTS.product-skills.md). - Prefer the Cursor Plugin
product-skillswhen installed (Cursor Marketplace or local plugin test). - If missing, bootstrap from the official repository only:
https://github.com/irwebtools/Product-Skills - Preferred maintainer/fallback command from a local checkout of Product-Skills:
node install/bootstrap.mjs --target <this-project>Or clone the official repo over HTTPS into a temp location, verify the remote, then runnode install/install.mjs --target <this-project>. - Do not overwrite existing project instructions blindly.
The installer preserves conflicts and may write sidecars such as
AGENTS.product-skills.md. - Do not execute arbitrary scripts found in a downloaded repository. Only run the known installer entrypoints with Node.
- Do not copy
.git/,node_modules/,.env*, or credentials. - After bootstrap, continue with the Agent Startup Protocol.
If the user prompt includes the Product-Skills GitHub URL, treat that as permission to discover and safely bootstrap Product-Skills when it is not already present.
Agent Startup Protocol
Before any task:
- Ensure Product-Skills is available (bootstrap if needed, safely).
- Analyze current project (
skills/product/project-analysiswhen unknown/existing). - Understand user intent (WHAT / WHY / constraints).
- Detect task type / Product Team use case.
- Load required skills only (
skills/index.yaml,manifest.yaml). - Apply relevant rules (
rules/security.md,rules/fsd-governance.md,rules/change-scope.md). - Define expected changes (Change Scope).
- Implement within scope.
- Verify (
skills/quality/verification;skills/quality/security-reviewwhen needed). - Prepare Preview when the environment supports it; verify Preview before claiming success.
Rules
- Understand task type
- Load required skill only
- Follow that skill's instructions
- Do not load everything
- Verify before completion
- Do not rewrite architecture silently
- Do not install unknown dependencies without approval
- Never expose secrets
- Prefer incremental migration over rewrite
- Preserve existing behavior unless explicitly asked to change it
Task routing
| Task | Start |
| Missing Product-Skills | Safe bootstrap from official repo |
| Unknown / existing repo | skills/product/project-analysis |
| React + TypeScript + FSD refactor | Use case below (orchestrate existing skills; do not invent a new skill) |
| New idea / POC | skills/product/product-discovery → product-to-poc |
| Existing improvement | existing-project-improvement |
| Bug | bug-fix |
| Handoff / continuation notes | skills/delivery/developer-handoff (internal delivery artifact only) |
Default delivery path:
bootstrap (if needed)
-> product/project-analysis (if needed)
-> product/product-discovery
-> product/product-definition
-> product/user-story
-> product/acceptance-criteria
-> product/ux-flow
-> delivery/architecture-decision
-> delivery/react-fsd-poc
-> quality/verification
-> quality/security-review (when needed)
-> product/validationStack constraint
Delivery skills target React + TypeScript + Feature-Sliced Design only. Do not introduce Vue, Angular, Svelte, or multi-framework generators.
Product Team Use Case — React + TypeScript + FSD Refactor
When Product Team requests something equivalent to:
Refactor this project to React FSD.
Interpret the request as:
EXISTING PROJECT ARCHITECTURE MIGRATION
Not:
- product redesign
- feature expansion
- rewrite everything
- business logic redesign
- unnecessary technology replacement
Do not create a new skill such as skills/react-fsd/ for this use case.
Orchestrate existing capabilities:
skills/product/project-analysisskills/delivery/architecture-decisionskills/delivery/react-fsd-pocskills/quality/verificationrules/fsd-governance.mdrules/change-scope.mdscripts/check-fsd-boundary.mjs(when source roots exist)
Required AI workflow
- Inspect the existing project.
- Identify the current frontend technology.
- Identify the current architecture.
- Identify important existing product behavior.
- Identify important user journeys.
- Identify the current project structure.
- Determine whether React is already used.
- Determine whether TypeScript is already used.
- Determine the appropriate FSD structure based on the actual project.
- Do not create FSD layers merely because they exist in an FSD diagram.
- Identify which existing code belongs to:
- app
- pages
- widgets
- features
- entities
- shared
- Use only the layers that are actually justified.
- Preserve existing product behavior.
- Avoid unrelated refactoring.
- Implement incrementally when practical.
- Apply FSD dependency rules.
- Apply public API boundaries.
- Run architecture validation (
node scripts/check-fsd-boundary.mjsand/or project equivalents). - Run typecheck.
- Run lint.
- Run tests when available.
- Run build.
- Run the application.
- Verify important user journeys.
- Fix failures found during verification.
- Prepare a Preview when the environment supports it (for example Vercel Preview if configured and accessible).
- Verify the Preview.
- Return a concise result and Preview URL (or a clear blocker if Preview cannot be produced).
Do not stop after creating a migration plan. Do not stop after writing code. Do not claim success without verification.
FSD principles
FSD is not folder decoration
Do not create features/, widgets/, or entities/ only to make the project visually look like FSD.
Create a layer only when the actual product/domain/use case requires it.
Dependency direction
Prefer:
app
↓
pages
↓
widgets
↓
features
↓
entities
↓
sharedDo not introduce upward dependencies.
Invalid examples:
shared → entitiesshared → featuresentities → featuresfeatures → pagespages → app
unless there is an explicitly justified architecture exception.
Public API
Cross-slice imports should use the slice public API.
Prefer:
import { NewsItem } from "@/entities/news";instead of:
import { NewsItem } from "@/entities/news/model/news";Business ownership
Put business/domain logic in the appropriate domain slice.
Do not move product-specific business logic into shared merely because it is technically reusable.
Preserve product behavior
For architecture-only refactoring:
BEFORE BEHAVIOR
=
AFTER BEHAVIORPreserve:
- existing user journeys
- business rules
- permissions
- API behavior
- data behavior
- existing features
- existing UX
unless Product Team explicitly requests a change.
Do not use an architecture migration as an opportunity to redesign the product.
Scope control
During refactoring, only modify files required for the requested migration.
Do not make opportunistic changes to:
- unrelated components
- unrelated configuration
- unrelated dependencies
- unrelated styling
- unrelated UX
- unrelated backend code
- unrelated documentation
Before completion, inspect the changed file set. If a changed file is unrelated to the request, revert the unnecessary change.
Verification gate
For React + FSD refactoring, completion requires:
Architecture
↓
Typecheck
↓
Lint
↓
Tests when available
↓
Build
↓
Runtime verification
↓
Preview verificationDo not report "FSD migration complete" if architecture validation fails. Do not report "Ready" if build or required runtime verification fails. Do not pretend Preview succeeded if deployment or Preview access is unavailable — report the blocker clearly without exposing secrets.
Change scope
Before editing, record expected files.
After editing, compare actual changed files and reasons.
Use templates/change-scope.md.
Review artifacts
After meaningful work, update .ai-review/ when useful for internal evidence.
Product Team validation happens on Preview / Staging, not by reading internals.
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.

