builder-syndicate / prs
AGENTS.md6 starsChanged 8 months agoApache-2.0View on GitHub
Last updated: 2025-01-02 This document captures conventions for opening GitHub PRs as an agent. When in doubt, prioritize clarity for a human reviewer and avoid duplicating ticket content. - Be ticket-centric: The ticket remains the source of truth for problem and acceptance criteria. The PR should be concise and focus on what landed and how to validate it quickly. - Always include a reference: Every PR must include a ref: footer to the relevant issue/ticket. If the work fully implements…
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,542 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 repository3 other files it gives its agents.
- AGENTS.mdAGENTS.md
- specs/AGENTS.mdAGENTS.md
- specs/alpha-claude/claude.mdCLAUDE.md
The file
We split this AGENTS.md into the rules it gives an agent
7 rules. About 0 are common, 4 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈4
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
- Very specific: line 12
Always include a reference: Every PR must include a ref: footer to the relevant issue/ticket.
- Distinctive: line 16
Make it feelable: Add a minimal, copy/paste "Feel it." section with steps to experience the change end-to-end.
- Distinctive: line 40
UI screenshots/GIFs: Add when the change affects UI in ways text alone won't convey (layout, animation, contrast).
- Distinctive: line 69
After the base lands, rebase and change base to main
- Very specific: line 74
Add other labels as appropriate (e.g., facet labels like posts, auth)
- Very specific: line 78
Use ### heading followed by <details><summary>expand</summary>:
- Distinctive: line 101
If conventions evolve, update this file and the template accordingly.
≈ “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
PR authoring guidance for agents (Builder Syndicate)
Last updated: 2025-01-02
This document captures conventions for opening GitHub PRs as an agent. When in doubt, prioritize clarity for a human reviewer and avoid duplicating ticket content.
Core principles
- Be ticket-centric: The ticket remains the source of truth for problem and acceptance criteria. The PR should be concise and focus on what landed and how to validate it quickly.
- Always include a reference: Every PR must include a
ref:footer to the relevant issue/ticket. If the work fully implements and closes a ticket, also includeCloses:following theref:footer. - Guide the reviewer: Highlight "Key files to review first" only when it materially reduces cognitive load. Keep it in a collapsible section.
- Make it feelable: Add a minimal, copy/paste "Feel it." section with steps to experience the change end-to-end.
- Use GitHub-native affordances: collapsible
<details>, image/video drag-and-drop, and auto-closing viaCloses:.
Template
- Preferred template:
prs/00-PR-TEMPLATE.md - Example PR write-ups for reference:
prs/*.draft.md
Required PR sections
- Header: Conventional Commit title, Branch, Base, Stack (use issue numbers, never branch names)
- Summary: 1–2 lines describing what landed
- Feel it.: Minimal steps to experience the change
- Caveats / Follow-ups: Known limitations and immediate next steps
- Footers:
ref: #<issue>(always) andCloses: #<issue>(when applicable)
Conditional sections
- Divergence from ticket: Include ONLY if the implementation differs from ticket AC or plan. Omit entirely if none.
- Key files to review first (collapsible): Include only when it materially helps navigation. Omit for small PRs.
- DB migrations (collapsible): Include only if migrations exist. Omit otherwise.
Optional elements
- UI screenshots/GIFs: Add when the change affects UI in ways text alone won't convey (layout, animation, contrast). The agent should proactively suggest visuals when additive, not include them by default.
"Feel it." guidance
The "Feel it." section should give a human a quick way to validate the change:
| Change type | Example |
| API / server | just run && curl -f localhost:8080/endpoint |
| Code-only / refactor | just test |
| UI | Steps to click through + optional screenshot |
| No-op (docs, config) | State: "This change is intended to have no observable runtime effect." |
Multiple references
PRs ideally map 1:1 to tickets, but real life happens. When a PR touches multiple issues:
ref: #<primary-issue>
ref: #<related-issue>
Closes: #<issue-fully-implemented>Stacked PRs
- Set the correct base branch when opening a stacked PR
- Reference the dependency with issue numbers:
Stack: depends on #<issue> - Never use branch names in public PR content — branches are internal; issues are the public contract
- After the base lands, rebase and change base to
main
Labels
- Always add the
ex machinalabel to PRs created by agents - Add other labels as appropriate (e.g., facet labels like
posts,auth)
Foldable sections
Use ### heading followed by <details><summary>expand</summary>:
### Key files to review first
<details><summary>expand</summary>
- file list here
</details>Do / Don't
| Do | Don't |
Link to issues using #<number> | Use branch names in Stack or PR body |
| Keep PR descriptions brief and action-oriented | Restate the entire ticket |
| Omit sections that don't apply | Include empty sections |
| Use outcomes or automated checks | Add checklists requiring manual clicking |
Add the ex machina label | Forget to label agent-authored PRs |
Questions or updates
If conventions evolve, update this file and the template accordingly.
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.

