skills
AGENTS.md1 starsChanged 20 days agoMITView on GitHub
This repository is the marketplace surface for Patina Project plugins and related install documentation.
- 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,700 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 repository112 other files it gives its agents.
- .agents/skills/react-best-practices/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- ab-testingSkill
- ad-creativeSkill
- adsSkill
- ai-seoSkill
- analyticsSkill
- asoSkill
- attributionSkill
- auditing-experiments-flagsSkill
- churn-preventionSkill
- cleaning-up-stale-feature-flagsSkill
- cloudflareSkill
- cold-emailSkill
- co-marketingSkill
- community-marketingSkill
- competitor-profilingSkill
- competitorsSkill
- configuring-experiment-analyticsSkill
- configuring-experiment-rolloutSkill
- content-strategySkill
- copy-editingSkill
- copying-flags-across-projectsSkill
- copywritingSkill
- create-prdSkill
- creating-experimentsSkill
- croSkill
- customer-researchSkill
- deployments-cicdSkill
- diagnosing-sdk-healthSkill
- directory-submissionsSkill
- e2e-testing-patternsSkill
- eas-app-storesSkill
- eas-hostingSkill
- eas-update-insightsSkill
- eas-workflowsSkill
- emailsSkill
- env-varsSkill
- eventsSkill
- expo-data-fetchingSkill
- expo-dev-clientSkill
- expo-routerSkill
- expo-upgradeSkill
- finding-experimentsSkill
- find-skillsSkill
- free-toolsSkill
- frontend-designSkill
- github-actionsSkill
- grill-with-docsSkill
- imageSkill
- infisical-apiSkill
- infisical-secret-syncsSkill
- infisical-user-setup-guideSkill
- influencer-marketingSkill
- instrument-feature-flagsSkill
- instrument-product-analyticsSkill
- investigate-metricSkill
- launchSkill
- lead-magnetsSkill
- maestro-mobile-testingSkill
- The first 60 shown.
The file
Show its rules and text
We split this AGENTS.md into the rules it gives an agent
22 rules. About 0 are common, 5 are distinctive, and 17 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.
17
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 72
If CLAUDE.md exists, it should point contributors back to AGENTS.md
- Very specific: line 84
Treat any vendored instruction that names the retired resolving-merge-conflicts skill as a reference to fix-merge-conflicts.
- Very specific: line 92
Follow it directly for claiming, labels, lifecycle, relationships, and closure.
- Very specific: line 102
When you begin or resume issue-linked work, run the working-on-issues skill first, before branching, editing, or opening a pull request.
- Distinctive: line 179
Use lowercase names for skill folders
- Distinctive: line 180
Keep skill names and folder names aligned
- Distinctive: line 181
Use Markdown for docs and JSON for manifests
- Very specific: line 187
When creating or editing any skill under plugins/*/skills/, first use the third-party writing-for-agents skill (the successor to …
- Very specific: line 211
If writing-for-agents is not installed in the local agent environment, install it with:
- Very specific: line 227
Run pnpm test to run the full suite, or use the targeted commands below while iterating.
- Very specific: line 231
Run bash scripts/tests/skill-install-lifecycle.test.sh after changing scripts/clean.sh, package lifecycle scripts, or the skill …
- Very specific: line 244
Run bash scripts/tests/skill-workspace.test.sh after changing a walker of plugins/*/skills or the workspace ignore rules.
- Very specific: line 246
Run bash scripts/tests/dogfood.test.sh to confirm in-repo skills pass the flat-layout check
- Very specific: line 247
Run bash scripts/tests/esm-tooling.test.sh after changing repo tooling configs or the package module type
- Very specific: line 251
Run bash scripts/tests/marketplace.test.sh to confirm the .claude-plugin/ catalog is valid
- Very specific: line 254
Run bash scripts/tests/diff-hygiene.test.sh after changing scripts/check-diff-hygiene.sh
- Very specific: line 255
Run bash scripts/tests/workflow-cleanup.test.sh after changing workflow cleanup behavior.
- Very specific: line 258
Run bash scripts/tests/scaffold-cleanup.test.sh after changing scaffold baseline cleanup behavior.
- Very specific: line 263
Run node scripts/tests/sheet-encodings.test.mjs after changing a model-sheet decoder (read-sheet.sh, the session-start hooks, or …
- Very specific: line 270
Run bash scripts/tests/agent-frontmatter.test.sh after changing a patina-reader* or comment-sicko agent file.
- Very specific: line 282
Use gh label list to see the repository's pull-request label set.
- Distinctive: line 286
Verify every label has a non-empty description:
≈ “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 is the marketplace surface for Patina Project plugins and related install documentation.
plugins/work/skills/scaffold-repository/: scaffold-repository skillplugins/work/skills/using-github/: using-github skillplugins/work/skills/update-branch/: local branch update skillplugins/work/skills/to-spec/: upstream to-spec mirrorplugins/work/skills/to-tickets/: upstream to-tickets mirrorplugins/code/skills/working-on-issues/: shared issue preflight (resolve live tracker, align branch and worktree, mark started)plugins/code/skills/move-branch-here/: Code worktree branch handover skillplugins/code/skills/move-session-here/: cross-agent session transcript handover skillplugins/work/skills/install-skills/: project-local skills CLI installation skillplugins/work/skills/design-by-contract/: consequential system contract design overlayplugins/code/skills/principle-offensive-programming/: defensive-code classification principleplugins/work/skills/grill-system-design/: focused system design grilling skillplugins/work/skills/review-system-design/: contract dependency review skillplugins/work/skills/grill-to-spec/: user-invoked grilling that hands ADR and glossary changes toto-specas proposalsplugins/work/skills/writing-for-pstack/: operator prompt authoring forpatina-modeplugins/work/skills/email-inbox-triage/: provider-agnostic email inbox triage into four tagged bucketsplugins/work/skills/cloud-storage-organization/: storage-agnostic loop that files loose files by rules learned from the user's correctionsplugins/work/skills/draft-user-follow-ups/: post-release support loop that drafts proven replies to owed customersplugins/work/skills/linear-inbox-cleanup/: marks read or archives Linear inbox notifications that need no actionplugins/code/skills/gather-evidence/: current-target evidence for human feedbackplugins/work/skills/pr-review-assistant/: user-invoked pair review of someone else's pull requestplugins/code/skills/running-mobile-simulators/: shared-host Android emulator and iOS simulator lifecycle skillplugins/code/skills/pr/: local PR body contract adapted from Matt Pocockplugins/code/skills/patina-mode/: Patina Project's default engineering mode, forked from pstackplugins/work/skills/triage/: upstream issue and PR triage workflowplugins/work/skills/retro/: upstream coding-session retrospective workflowplugins/work/skills/show-me/: upstream show-me mirror from humanlayer (visual explanation)plugins/work/skills/design-control-loop/: upstream design-control-loop mirror from humanlayer (agentic control loop design)plugins/work/skills/ask-matt/: upstream mirror (mattpocock)plugins/work/skills/codebase-design/: upstream mirror (mattpocock)plugins/work/skills/domain-modeling/: upstream mirror (mattpocock)plugins/work/skills/grill-me/: upstream mirror (mattpocock)plugins/work/skills/grilling/: upstream mirror (mattpocock)plugins/work/skills/handoff/: upstream mirror (mattpocock)plugins/work/skills/improve-codebase-architecture/: upstream mirror (mattpocock)plugins/work/skills/setup-work-skills/: upstream mattpococksetup-matt-pocock-skillsmirror, renamed and forked for Patina label setupplugins/work/skills/tutor/: upstream mirror (mattpocock)plugins/work/skills/to-questionnaire/: upstream mirror (mattpocock)plugins/work/skills/wait-what/: upstream mirror (mattpocock)plugins/work/skills/diagnosing-bugs/: upstream mirror (mattpocock)plugins/work/skills/implement/: upstream mirror (mattpocock)plugins/work/skills/implement-spec/: upstream mirror (mattpocock)plugins/work/skills/prototype/: upstream mirror (mattpocock)plugins/work/skills/red-green/: upstream mirror (mattpocock)plugins/work/skills/research/: upstream mirror (mattpocock)plugins/work/skills/wayfinder/: upstream mirror (mattpocock)plugins/work/skills/wizard/: upstream mirror (mattpocock)plugins/work/skills/writing-for-agents/: upstream mirror (mattpocock)plugins/work/.claude-plugin/plugin.json: Claude manifest for the Work pluginplugins/work/.codex-plugin/plugin.json: Codex manifest for the Work pluginplugins/code/agents/patina-agent.md: Patina mode routing agentplugins/code/agents/patina-reader.md: review and research agent without edit tools that omits CLAUDE.md, with effort variants inplugins/code/effort-agents/plugins/code/hooks/: Code session-start integrationplugins/code/.claude-plugin/plugin.json: Claude manifest for the Code pluginplugins/code/.codex-plugin/plugin.json: Codex manifest for the Code plugin.agents/skills/<name>/: committed overlay. Repo-owned skills are symlinks into their owning plugin; vendored third-party skills are real directories restored bypnpm skills:install. All entries are tracked..claude/skills/<name>/: committed Claude Code overlay. Repo-owned skills symlink into their owning plugin; vendored third-party skills are relative symlinks into../../.agents/skills/<name>. All entries are tracked..claude-plugin/marketplace.json: repo-local Claude marketplace source of truth for thecodeandworkplugins.codex/environments/environment.toml: Codex workspace setup for this repositorydocs/: contributor docs such asdocs/file-structure.mdanddocs/release-flow.md- If
CLAUDE.mdexists, it should point contributors back toAGENTS.md - root config:
package.json,commitizen.config.json,commitlint.config.js, and.husky/
GitHub Issues are the canonical tracker for this public repository. Linear receives issues through one-way GitHub-to-Linear intake for team visibility and is not authoritative. Synced property updates are bidirectional, so do not edit or close public-repository issues in Linear. Do not add committed design or plan artifacts for routine issue work; put durable context on the GitHub issue or in normal docs when it is broadly useful beyond one issue.
Agent skills
Treat any vendored instruction that names the retired
resolving-merge-conflicts skill as a reference to fix-merge-conflicts.
Issue tracker
Tracker operations are defined in the sole adapter. The real file is
docs/agents/issue-tracker.md; docs/issue-tracker.md is a compatibility
symlink to it, so either path reaches the same adapter.
Follow it directly for claiming, labels, lifecycle, relationships, and closure;
the Work plugin owns the to-spec skill. Use it for issue filing and
editing. docs/issue-publishing.md governs issue body framing, and the adapter
owns readiness and priority. The <identifier> Agent brief is the agent
contract, and the issue description is for people. Issue artifacts carry the
issue ID in their titles, as the adapter's Issue artifacts section
describes (ADR-791).
Working an issue
When you begin or resume issue-linked work, run the
working-on-issues skill first, before branching, editing, or opening a
pull request. It resolves the issue, lands you on the tracker-provided branch,
and marks it started after its gates pass. The skill is
idempotent, so run it at the start of every issue-linked session even if you are
unsure it has already run — re-running while already aligned is a no-op. A
session or worktree branch the harness starts you on, such as claude/<...>, is
not issue-linked: let working-on-issues align it rather than committing on the
session branch. If another worktree owns the issue branch, follow the skill's
handoff gate instead of moving it implicitly.
Triage labels
Issue labels (Type, Theme, and Triage groups, including each repository's
Type set) and the Sentence case rule for label names live only in the tracker
adapter. See docs/issue-tracker.md → Labels.
Domain docs
This is a single-context repository; domain docs are optional and created lazily when useful. See docs/agents/domain.md.
Architecture decision records
Name and write ADRs by docs/adr/README.md, the
single source of truth for ADR naming in this repository. It supersedes the
sequential 0001-increment guidance still embedded in the vendored shared
skills (domain-modeling, setup-work-skills): name every ADR after its
originating GitHub issue (ADR-N-<slug>.md), never scan-and-increment, and
do not edit the vendored payloads under .agents/skills/**.
Durable context capture
CONTEXT.md and docs/adr/** are in-force truth and change only on the branch
that publishes them: the branch implementing the decision, or a docs-only branch
when the repository already reflects it. A session anywhere else — grilling,
planning, a worktree on an unrelated branch, an implementing branch that does
not exist yet — captures the exact proposed doc text (the complete ADR body and
each glossary entry) on the GitHub issue that will implement the decision
instead of editing the tree, creating that issue if none exists. The branch
implementing such an issue applies the captured text verbatim in its pull
request. Take the capture rules and the GLOSSARY-FORMAT.md and ADR-FORMAT.md
formats from the vendored domain-modeling skill; this repository owns no
documentation-capture skill. This
uses CONTEXT.md as the local glossary filename and supersedes the inline glossary-update capture instruction in
the vendored domain-modeling payload; see
docs/adr/ADR-337-off-branch-doc-capture.md.
In a Linear-tracked repository, the proposed ADR body goes in a Document on the
issue instead, as the tracker adapter's Issue artifacts section describes
(ADR-654).
Build, Test, and Development Commands
pnpm install(aliaspnpm env:setup): install dev tooling and initialize Husky. It does not restore skills — vendored skills are committed.pnpm skills:install: re-vendor locked project-local skills fromskills-lock.jsonusing the upstream skills CLI (pnpm dlx skills@latest experimental_install --yes), then commit the refreshed.agents/skills/**and.claude/skills/**overlays. This is a manual maintenance command, not apnpm installhook. Each lock entry tracks its source's default branch (latest), so re-running picks up upstream updates.pnpm sync-upstream-skills: sync every pinned upstream inupstream-skills.json, or pass a source name to sync one. It stages the result without committing and leaves overlapping edits as real git conflicts.upstream-skills-forks.jsonrecords deliberate local forks.pnpm clean: remove generated dependency and transient install files (node_modules,.skills-install.lock*); never prunes committed skill overlaysbash scripts/worktree-setup.sh: shared worktree bootstrap (fast-forward ontoorigin/main, thenpnpm env:setup), wired into the ClaudeSessionStarthook and the Codex[setup]blockpnpm commit: create a guided conventional commit with issue taggingpnpm exec commitlint --edit <path>: validate commit messages manuallypnpm lint:md: lint all tracked Markdown files withmarkdownlint-cli2pnpm test: run the full local verification suitefind skills -mindepth 2 -maxdepth 2 -name SKILL.md | sort: inspect the skill entry points
Coding Style & Naming Conventions
- Use lowercase names for skill folders
- Keep skill names and folder names aligned
- Use Markdown for docs and JSON for manifests
- Issue titles use plain language, not conventional commit formatting. Example:
Update README with Claude Code install instructions
Working on skills
When creating or editing any skill under plugins/*/skills/, first use the third-party
writing-for-agents skill (the successor to writing-great-skills) as a
structure and progressive-disclosure review. It helps check trigger
descriptions, concise SKILL.md shape, leading-word terminology, and when to
split reference material out of the main skill file.
Referring to shared repository docs
A skill under plugins/<plugin>/skills/<name>/ sits four levels below this
repository's root, but three levels below a consumer repo's root once vendored into .agents/skills/
or .claude/skills/. A relative link to a repo-root doc therefore resolves in
exactly one of those layouts and is broken in the other — ../../AGENTS.md
becomes .claude/AGENTS.md, which does not exist.
Name shared repository docs by their repo-root-relative path in prose
(`docs/issue-tracker.md`, "AGENTS.md at the repository root") instead of
linking them. The file lives in the consumer's repository, not alongside the
skill, so a path is the honest reference and a link is a layout assumption.
Relative links between sibling skills are fine and should stay links: skills
remain siblings in both layouts, so ../../design-by-contract/references/... from
plugins/work/skills/using-github/workflows/ resolves either way. Links to files bundled inside
the same skill (./audit-checklist.md) are likewise unaffected.
If writing-for-agents is not installed in the local agent environment, install
it with:
npm_config_ignore_scripts=true npx skills@latest add mattpocock/skills@writing-for-agents -yTesting Guidelines
- Tests must not assert on the prose content of documentation files. Tests
validate code behavior and machine-consumed contracts only: shell/JS behavior,
valid JSON/YAML config,
.mdfrontmatter schema (for examplename:matches the folder), symlink resolution, and required-file existence. A documentation file's prose body must be freely editable without breaking a test. Markdown linting (pnpm lint:md) is unaffected — linting is not testing. See docs/adr/ADR-224-no-tests-on-documentation-content.md. - Run
pnpm testto run the full suite, or use the targeted commands below while iterating. pnpm testincludes network-backed skills CLI canaries and the committed-skill lifecycle check.- Validate paths with
findorrg - Run
bash scripts/tests/skill-install-lifecycle.test.shafter changingscripts/clean.sh, package lifecycle scripts, or the skill install/clean package scripts. - Run
bash scripts/tests/worktree-setup.test.shafter changingscripts/worktree-setup.sh. - Run
bash scripts/tests/move-session-here.test.shafter changingplugins/code/skills/move-session-here/scripts/session-handoff.mjs. - Run
bash scripts/tests/update-branch.test.shafter changingplugins/work/skills/update-branch/**. - Run
node scripts/tests/triage-check-issue-state.test.mjsafter changingplugins/work/skills/triage/scripts/check-issue-state.mjs. - Run
bash scripts/tests/check-skill-evals.test.shafter changingscripts/check-skill-evals.mjsor any skill'sevals/folder. - Run
bash scripts/tests/skill-workspace.test.shafter changing a walker ofplugins/*/skillsor the workspace ignore rules. - Run
bash scripts/tests/dogfood.test.shto confirm in-repo skills pass the flat-layout check - Run
bash scripts/tests/esm-tooling.test.shafter changing repo tooling configs or the package module type - Run
bash scripts/tests/markdown-lint-config.test.shafter changing.markdownlint-cli2.jsonc,.markdownlint.jsonc,.lintstagedrc.js, or thelint:mdscript; it asserts the markdown exclusion mechanism behaviorally - Run
bash scripts/tests/marketplace.test.shto confirm the.claude-plugin/catalog is valid - Run
bash scripts/tests/pull-request-workflow.test.shafter changing.github/workflows/pull-request.ymlor.github/pr-readiness.json - Run
bash scripts/tests/diff-hygiene.test.shafter changingscripts/check-diff-hygiene.sh - Run
bash scripts/tests/workflow-cleanup.test.shafter changing workflow cleanup behavior; it asserts only filesystem state and non-.mdconfig targets - Run
bash scripts/tests/scaffold-baseline-manifest.test.shafter changingplugins/work/skills/scaffold-repository/core-baseline.txtor itsverify-baseline.sh - Run
bash scripts/tests/scaffold-cleanup.test.shafter changing scaffold baseline cleanup behavior; it asserts only filesystem state and non-.mdconfig/code targets - Run
bash scripts/tests/setup-code-skills-machinery.test.shafter changingplugins/code/skills/setup-code-skills/scripts/install-machinery.shor its bundledassets/; it asserts installer idempotency, the no-clobber contract, and that the bundled payloads match their canonical plugin sources - Run
node scripts/tests/sheet-encodings.test.mjsafter changing a model-sheet decoder (read-sheet.sh, thesession-starthooks, orpi/sheet.ts); it asserts that every decoder reads each sheet encoding the same way - Run
node scripts/tests/sheet-decoder.test.mjsafter changingplugins/code/pi/sheet.ts,setup-pstack/scripts/read-sheet.sh, or the session-start hooks; it feeds UTF-16LE, BOM, and CRLF sheets through every decoder and compares one literal role map - Run
bash scripts/tests/agent-frontmatter.test.shafter changing apatina-reader*orcomment-sickoagent file; it asserts their frontmatter contracts and that the variants match the base - Run
node scripts/tests/pi-read-only.test.mjsafter changingplugins/code/pi/read-only.ts; it asserts which Pi agent types lose the edit and write tools - Run
bash scripts/tests/sync-upstream-skills.test.shafter changingscripts/sync-upstream-skills.mjs; it exercises the manifest, fork registry, dry-run, idempotence, three-way merge, and argument-refusal contracts.
Pull request labels
Use gh label list to see the repository's pull-request label set. Each label's
description documents when to apply it. Issue labels are live tracker data and
must be resolved through docs/issue-tracker.md.
Verify every label has a non-empty description:
gh label list --json name,description --jq '.[] | select(.description == "")'Writing pull requests
Pull request bodies follow plugins/code/skills/pr/SKILL.md. Use its
section order and omit empty optional sections. Put one closing line in
## Merge Danger for each completed issue, with both GitHub and corresponding
Linear references and a closing keyword for each.
.github/pull_request_template.md only reminds authors about the closing
references. It does not define the body structure. Use
gh pr create --body-file <path-to-rendered-body> with a body that already
follows the pr skill.
For issues, use the tracker-agnostic issue skills. They consult
docs/issue-tracker.md.
GitHub Actions pinning
Pin every action reference to a full 40-character commit SHA, not a tag. Tags are mutable;
SHAs are not. Above each uses: line, leave a comment naming the action and version the SHA
corresponds to, so updates remain reviewable.
# actions/checkout@v4.3.1
- uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5actionlint runs in CI on .github/workflows/** changes and enforces workflow hygiene as
part of its other checks.
Also enable Settings → Actions → General → Require actions to be pinned to a full-length
commit SHA (at the repo or org level). GitHub then refuses to run any workflow that uses:
an action by tag or branch, giving a hard gate on top of the CI check.
Skill Releases
This repo owns skills in the Code and Work plugins:
| Skill | Path |
| scaffold-repository | plugins/work/skills/scaffold-repository/ |
| using-github | plugins/work/skills/using-github/ |
| update-branch | plugins/work/skills/update-branch/ |
| install-skills | plugins/work/skills/install-skills/ |
| design-by-contract | plugins/work/skills/design-by-contract/ |
| grill-system-design | plugins/work/skills/grill-system-design/ |
| review-system-design | plugins/work/skills/review-system-design/ |
| writing-for-pstack | plugins/work/skills/writing-for-pstack/ |
| email-inbox-triage | plugins/work/skills/email-inbox-triage/ |
| cloud-storage-organization | plugins/work/skills/cloud-storage-organization/ |
| draft-user-follow-ups | plugins/work/skills/draft-user-follow-ups/ |
| linear-inbox-cleanup | plugins/work/skills/linear-inbox-cleanup/ |
| grill-to-spec | plugins/work/skills/grill-to-spec/ |
| working-on-issues | plugins/code/skills/working-on-issues/ |
| move-branch-here | plugins/code/skills/move-branch-here/ |
| move-session-here | plugins/code/skills/move-session-here/ |
| principle-offensive-programming | plugins/code/skills/principle-offensive-programming/ |
| pr | plugins/code/skills/pr/ |
| gather-evidence | plugins/code/skills/gather-evidence/ |
| pr-review-assistant | plugins/work/skills/pr-review-assistant/ |
| running-mobile-simulators | plugins/code/skills/running-mobile-simulators/ |
| retro | plugins/work/skills/retro/ |
| to-spec | plugins/work/skills/to-spec/ |
| to-tickets | plugins/work/skills/to-tickets/ |
| triage | plugins/work/skills/triage/ |
find-skills is a third-party skill from vercel-labs/skills and is not
a marketplace entry in this repo.
Releases are driven by release-please via .github/workflows/release-please.yml, which
maintains a single standing Release PR for the repo as a whole. Tag form: v<X.Y.Z> — no
component prefix. The marketplace only publishes tagged (v<X.Y.Z>) releases. See
docs/release-flow.md.
The in-repo plugins share one root release and tag; they are not separate
release-please packages. Third-party skills such as
find-skills are installed separately from their source repo's default branch
or a specific #<git-ref>.
Adding or removing a repo-owned skill is a normal catalog change, not a breaking
change: version it with the fitting conventional type (usually feat:), never a
breaking type! / major bump. Skills are agent instructions, not a runtime API —
a removed skill simply leaves the catalog (recorded in the marketplace tests'
retired_marketplace_skills guard) and breaks nothing at runtime for consumers,
who re-vendor from the lockfile. Reserve type! for changes that actually break
a machine-consumed contract (for example the plugin-manifest schema or the
install lockfile shape).
Merging a Release PR tags the commit and publishes a GitHub Release. The workflow also auto-merges Release PRs after required checks pass.
Bot-generated release-please PRs from release-please--* branches and bot-generated release
bump PRs from bot/bump-* branches are the only no-issue PR exceptions to the issue-tag rule.
Commit & Pull Request Guidelines
Commits must use conventional commit types, no scopes, and a current GitHub issue reference:
type: #123 short description
Examples:
chore: #1 bootstrap marketplace repofeat: #12 add GitHub workflow skill
For squash-and-merge workflows, PR titles must match the commitlint commit format:
type: #123 short description
Bot-generated release-please PRs from release-please--* branches and bot-generated release
bump PRs from bot/bump-* branches are the only no-issue PR exceptions.
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.

