
What is AGENTS.md? How to write one your coding agents follow
AGENTS.md is a Markdown file that tells AI coding agents how to work on your repo. What it is, which tools read it, and how to write one that works.
A ready settings.json for Claude Code: allow lint and tests, ask before commits, deny reading .env files, git push and rm -rf. Schema-validated.
Deny rules block in every permission mode, even bypassPermissions. Rules are checked deny, then ask, then allow.
{
"$schema": "https://json.schemastore.org/claude-code-settings.json",
"permissions": {
"allow": [
"Bash(npm run lint)",
"Bash(npm run test *)",
"Bash(npm run build)",
"Bash(git status)",
"Bash(git diff *)"
],
"ask": [
"Bash(git commit *)",
"Bash(npm install *)"
],
"deny": [
"Read(./.env)",
"Read(./.env.*)",
"Read(./**/.env)",
"Read(./**/.env.*)",
"Edit(./.env)",
"Edit(./.env.*)",
"Bash(git push *)",
"Bash(rm -rf *)",
"Bash(supabase db reset *)"
]
}
}
allow: lint, tests, build, git status and diffask: commits and installsdeny: .env reads and edits, git push, rm -rf, supabase db reset.claude/settings.json in your project root..claude/settings.local.json.Anyone running Claude Code in a repo with real secrets.

AGENTS.md is a Markdown file that tells AI coding agents how to work on your repo. What it is, which tools read it, and how to write one that works.

How to run coding agents safely with Claude Code permission modes, Codex sandbox and approval settings, deny rules, and habits that keep secrets out of reach.

MCP security best practices for vibe coders: prompt injection risks, what the MCP spec requires, and a checklist to use MCP servers without leaking data.
The Codema publication. Consent is required. You are not subscribed until you confirm from the email, and nothing is stored if email delivery is not connected.