car-rental-skills
AGENTS.md2 starsChanged 23 days agoMITView on GitHub
Read before changing anything. Keep this file and CLAUDE.md aligned. - Single source of truth: .claude-plugin/plugin.json, .claude-plugin/marketplace.json, .codex-plugin/plugin.json, .agents/plugins/marketplace.json. Name, version, author, license, homepage and the bundle description stay identical across them. - .codex-marketplace/car-rental-skills/ is generated. Never edit it by hand: change the root files, then run python3 scripts/sync_codex_marketplace.py. - Default bump is PATCH for every shippable commit. MINOR or MAJOR only when the owner asks. - After a bump: git tag -a vX.Y.Z -m "...", push the tag, then…
- 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 repository10 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- car-rental-businessSkill
- car-rental-agreementSkill
- car-rental-business-planSkill
- car-rental-damage-inspectionSkill
- car-rental-listing-writerSkill
- car-rental-market-scanSkill
- car-rental-pricingSkill
- car-rental-review-replySkill
- car-rental-social-postsSkill
The file
We split this AGENTS.md into the rules it gives an agent
5 rules. About 0 are common, 4 are distinctive, and 1 is 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.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 3
Read before changing anything.
- Distinctive: line 13
Default bump is PATCH for every shippable commit.
- Very specific: line 15
After a bump: git tag -a vX.Y.Z -m "...", push the tag, then gh release create vX.Y.Z --title "vX.Y.Z" --notes "..." --latest (the README …
- Distinctive: line 22
Run every check in "Validation" before pushing.
- Distinctive: line 51
Never write a market price into a skill or reference as a fact.
≈ “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
Agent conventions (Codex) - car-rental-skills
Read before changing anything. Keep this file and CLAUDE.md aligned.
Versioning
- Single source of truth:
.claude-plugin/plugin.json,.claude-plugin/marketplace.json,.codex-plugin/plugin.json,.agents/plugins/marketplace.json. Name, version, author, license, homepage and the bundle description stay identical across them. .codex-marketplace/car-rental-skills/is generated. Never edit it by hand: change the root files, then runpython3 scripts/sync_codex_marketplace.py.- Default bump is PATCH for every shippable commit. MINOR or MAJOR only when the owner asks.
- After a bump:
git tag -a vX.Y.Z -m "...", push the tag, thengh release create vX.Y.Z --title "vX.Y.Z" --notes "..." --latest(the README badge reads the Releases API, not tags).
Commits
- Author must be Sergey:
git commit --author="Sergey Bulaev <s@bulaev.org>". - Run every check in "Validation" before pushing.
Skill bundle invariants
- Exactly 8 skills. The count is stated in the plugin manifests, README,
root
SKILL.md, this file andCLAUDE.md; change all of them together. description:target <= 400 chars, hard <= 510, keyword-rich, a "Not for X (use Y)" sentinel when skills overlap. No em dashes or en dashes in anydescription:.- Skill names are public surface: a rename updates manifests, README table,
root
SKILL.mdand every cross-reference.
Shared references
references/catalog-data.md: the market data contract (tools, connector or client, published rates only, sample size and date). Skills cite it instead of repeating it.references/voice-rules.md: the enumerated banned list for customer copy.references/legal-guardrails.md: contract and insurance guardrails.references/untrusted-content.md: data-is-not-instructions. Every skill that reads someone else's text, or callsget_company,search_companiesorsearch_vehicles, carries a## Untrusted contentsection citing it;scripts/check_untrusted_rule.pyenforces it through itsREQUIREDset.
Market data
lib/carrentallist_client.pyis standard library only and talks tohttps://mcp.carrentallist.com/mcp. KeepTOOLSin sync with the server:python3 scripts/check_tools.py --live.- Never write a market price into a skill or reference as a fact. Examples use
the "median $X over N cars, data as of
<date>" shape.
Validation
python3 scripts/check_no_secrets.py
python3 scripts/check_frontmatter.py
python3 scripts/check_markdown_references.py
python3 scripts/check_untrusted_rule.py
python3 scripts/check_text_encoding.py
python3 scripts/check_tools.py --live
python3 scripts/sync_codex_marketplace.py
grep -nE '^description:' SKILL.md skills/*/SKILL.md | grep -E '—|–' # must be emptyDoes 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.

