Skip to content
/

AGENTS.md

agents-md · agentsmd/agents.md · ★ 22k · last commit 2026-03-12

Primitive shape
No installable primitives
00

Summary

AGENTS.md — Summary

Field Value
slug agents-md
display_name AGENTS.md
github_url https://github.com/agentsmd/agents.md
stars 21,710
license MIT
language TypeScript
last_commit 2026-03-12
contributors 20
maintainer_status active
version_analyzed (no versioning; website at agents.md)

One-liner

AGENTS.md is a simple, open format specification — a standard for a per-repo markdown file (AGENTS.md) that guides AI coding agents, analogous to what README.md is for humans.

What it is

This repo is primarily a format specification and marketing website (Next.js + Tailwind, deployed at https://agents.md/). The specification itself is minimal: place a file named AGENTS.md in any directory of your project. Agents read it for context — build commands, testing instructions, coding conventions, PR rules. The format is intentionally unstructured: plain markdown with no required fields, no schema, no enforced sections.

The repository serves two purposes:

  1. Defining and promoting the AGENTS.md convention
  2. Hosting the agents.md website showing compatible tools and examples

Notable stats

21,710 GitHub stars makes this the highest-starred framework in the entire Phase D batch by a wide margin. Stars largely reflect format adoption across the ecosystem — Codex CLI, Amp, Cursor, RooCode, Aider, Gemini CLI, Windsurf, Copilot, and 20+ other tools recognize AGENTS.md natively.

Quality

quality: tier-b — comprehensive format specification, active ecosystem, but the "framework" is minimal markdown convention (no code primitives to analyze deeply).

01

Overview

AGENTS.md — Overview

Problem Solved

AI coding agents need project-specific guidance — how to set up the dev environment, what commands to run for testing, how to format PRs, what coding conventions to follow. Before AGENTS.md existed, teams either embedded these instructions in CLAUDE.md, .cursorrules, README.md, or scattered them across tool-specific config files with no portability.

AGENTS.md proposes a single, tool-agnostic location: a AGENTS.md file at the repo root (or in any subdirectory). When a compatible agent starts working in that directory, it reads the file automatically.

Core Proposition

"Think of AGENTS.md as a README for agents."

The specification is deliberately minimal:

  • Any valid markdown is a valid AGENTS.md
  • No required fields, no enforced sections
  • Place it anywhere in the directory tree — closest AGENTS.md to the edited file takes precedence
  • Agents execute programmatic instructions they find (e.g., listed test commands)

Format Description

AGENTS.md is plain markdown. The website shows a canonical example with three sections:

## Dev environment tips
- Use `pnpm dlx turbo run where <project_name>` to jump to a package...

## Testing instructions
- Run `pnpm turbo run test --filter <project_name>` to run checks...
- Add or update tests for the code you change, even if nobody asked.

## PR instructions
- Title format: [<project_name>] <Title>
- Always run `pnpm lint` and `pnpm test` before committing.

These sections are not required; they are idiomatic.

Website

The repository doubles as the agents.md website (Next.js, hosted on Vercel):

  • Hero: format intro
  • WhySection: rationale
  • CompatibilitySection: scrolling ticker of 20+ compatible tools
  • ExamplesSection: real AGENTS.md files from openai/codex, apache/airflow, temporalio/sdk-java, PlutoLang/Pluto
  • HowToUseSection: setup guide
  • FAQSection: 7 common questions

Ecosystem Adoption

Compatible tools listed at the time of analysis: Codex, Amp, Jules, Cursor, Factory, RooCode, Aider, Gemini CLI, goose, Kilo Code, opencode, Phoenix, Zed, Semgrep, Warp, GitHub Copilot, VS Code, Ona, Devin, Windsurf, Autopilot, Augment Code, Junie.

Migration Path

The FAQ explicitly addresses migration from competing naming conventions:

mv AGENT.md AGENTS.md && ln -s AGENTS.md AGENT.md

This symlink strategy maintains backward compatibility for tools that read AGENT.md.

02

Install Setup

AGENTS.md — Install & Setup

Installation

There is no installer. Adoption requires one action:

  1. Create a file named AGENTS.md in any project directory.
  2. Write markdown instructions for the AI agent.
  3. Tools that support the convention will discover and read it automatically.

For Tool Developers

Tools integrate by reading AGENTS.md from the working directory (and traversing up the tree for parent-directory context). The specification prescribes no API, no config key, no hook — just file discovery.

For tools that need explicit configuration (e.g., Aider, Gemini CLI):

Aider (.aider.conf.yml):

read: AGENTS.md

Gemini CLI (.gemini/settings.json):

{
  "context": {
    "fileName": "AGENTS.md"
  }
}

Directory Scoping

AGENTS.md can appear at multiple levels. The closest file to the edited file wins. This enables monorepo scenarios where each package has its own AGENTS.md with package-specific instructions, while the root AGENTS.md provides global defaults.

The Repository Itself

The agentsmd/agents.md repo demonstrates the convention by shipping its own AGENTS.md — which contains Next.js development guidelines for contributors working on the website. This is metadata-complete: the format's reference repo eats its own dog food.

Runtime Requirements

None — the format requires no tooling, runtime, or dependency to author. Consumption tooling lives in the AI agent products themselves.

Versioning

The specification has no version number. The format is intentionally stable by virtue of being unstructured markdown.

03

Commands Skills

AGENTS.md — Commands & Skills

Commands

None. AGENTS.md defines no commands, slash-commands, or CLI primitives. It is a passive format specification.

Skills

None. The format has no skill definition mechanism.

Subagents

None. Single-agent convention with no spawning mechanism.

Hooks

None. The format specifies no hook events.

Scripts

The repository includes package.json scripts for the Next.js website:

  • dev — start Next.js dev server
  • build — production build
  • lint — ESLint
  • test — test suite (if present)

These are website maintenance scripts, not framework primitives.

What "Instructions" Look Like

An AGENTS.md file is composed of human-written markdown sections that agents parse as natural language. The canonical sections are:

  • Dev environment tips — project-specific setup commands, package manager conventions
  • Testing instructions — how to run tests, what passes before merge
  • PR instructions — title format, required pre-commit checks

Agents that support the format are expected to execute commands they find listed (e.g., testing commands) as part of their normal task completion.

Programmatic Behavior

Per the FAQ: "Yes — if you list [testing commands], the agent will attempt to execute relevant programmatic checks and fix failures before finishing the task."

This means the "instructions" in AGENTS.md are not static documentation — compatible agents treat them as behavioral contracts to enforce during task execution.

05

Memory State

AGENTS.md — Memory & State

State Storage

AGENTS.md is itself the state storage mechanism — a plain markdown file committed to version control. The format has no additional state files, databases, or memory layers.

File Purpose
AGENTS.md Project instructions read by compatible agents
<subdir>/AGENTS.md Scoped instructions for subdirectory (optional)

Persistence Model

File-based, version-controlled. Instructions persist as long as the file exists in the repository. All state lives in plain text — there is no session state, no embedded embeddings, no vector store.

Cross-Session Handling

Because AGENTS.md is committed to the repo, it is automatically available in every new session without any setup step. The agent reads it on each session start.

Memory Type Classification

  • Type: static-file
  • Scope: project (repo-wide)
  • Mutability: human-edited or agent-edited (with appropriate write access)
  • Indexing: none — plain text, no search mechanism

Living Documentation Model

The FAQ states: "Absolutely. Treat AGENTS.md as living documentation." This implies the file is expected to evolve. Unlike structured memory systems (e.g., ccmemory's embedding index or caliber's CALIBER_LEARNINGS.md), AGENTS.md has no automated update mechanism — human authors (or AI agents with repo write access) update it manually.

Contrast with Other Memory Approaches

AGENTS.md is the most minimal viable memory approach: one file, no structure, no tooling. This contrasts sharply with:

  • caliber: automatically generates and updates CALIBER_CONTEXT.md via hooks
  • faf-cli: maintains project.faf as a structured YAML with bi-sync
  • ccmemory: uses embeddings to retrieve relevant past context
  • contextkit: maintains Context.md + per-feature Spec/Tech/Steps files
09

Uniqueness

AGENTS.md — Uniqueness & Positioning

The AGENTS.md vs AGENT.md Schism

This is the central positioning question for this batch. Two competing format specifications use nearly identical names:

Attribute AGENTS.md (this framework) AGENT.md
Repo agentsmd/agents.md agentmd/agent.md
Stars 21,710 80
Author community / 20 contributors Geoffrey Huntley (Sourcegraph/Amp)
Origin Codex CLI convention RFC-style specification
Structure Free-form markdown RFC-style: Abstract, Spec, IANA sections
Tooling 20+ tools support it Amp, Sourcegraph
Migration mv AGENT.md AGENTS.md && ln -s AGENTS.md AGENT.md mv CLAUDE.md AGENT.md && ln -s AGENT.md CLAUDE.md
Status Active (2026-03-12) Dormant (2025-07-10)

The AGENTS.md FAQ instructs migrating FROM AGENT.md — the symlink command in the FAQ is a direct competitive response. The agent-md specification explicitly acknowledges the tension: "we're willing to compromise."

By star count and ecosystem adoption, AGENTS.md has won this naming competition decisively. The 270x star ratio (21,710 vs 80) and the breadth of tool support (23 tools vs 2) make AGENTS.md the de facto standard.

Comparison to CLAUDE.md and .cursorrules

AGENTS.md is the cross-tool answer to tool-specific context files:

  • CLAUDE.md — Claude Code only
  • .cursorrules — Cursor only
  • .windsurfrules — Windsurf only
  • AGENTS.md — all of the above + 20 more

The migration story from CLAUDE.md to AGENTS.md is not explicitly documented (the FAQ only covers AGENT.md migration), but the philosophy implies AGENTS.md as the canonical source and CLAUDE.md as a tool-specific fallback.

Differs From Seeds

No direct seed match. AGENTS.md is a format standard, not a framework. The closest seed is agent-os (Archetype 4 — markdown scaffold, zero primitives), but agent-os generates a CLAUDE.md file through its command system and is Claude Code-specific. AGENTS.md is the tool-agnostic alternative that requires no commands to create.

More precisely:

  • vs agent-os: agent-os is complex installation + command-driven; AGENTS.md is "create a file"
  • vs openspec: openspec defines a workflow; AGENTS.md defines a location
  • vs superpowers: superpowers adds 87 behavioral skills on top of Claude Code; AGENTS.md adds nothing except a standard filename

What Makes it Distinctive

  1. Scale of adoption: 21,710 stars is the highest of any framework in the Phase D batch corpus and rivals major developer tools. The format won by simplicity, not features.
  2. Zero primitives by design: No schema. No required fields. No tooling. The specification's greatest strength is its refusal to add structure.
  3. The FAQ as competitive document: The Gemini CLI and Aider configuration instructions, and the AGENT.md migration command, make the FAQ a living record of the format wars.
  4. Self-demonstrating repo: The agentsmd/agents.md repo ships its own AGENTS.md — making the repo itself the canonical example of the format in use.

Observable Failure Mode

The format's weakness is inversely proportional to its strength: with no schema, no required fields, and no validation, agents receive whatever the author wrote. A poorly authored AGENTS.md (contradictory instructions, outdated commands, wrong package manager) will confuse agents with no mechanism to detect the problem. This is precisely what ai-context-linter (another batch framework) tries to address.

04

Workflow

AGENTS.md — Workflow

No Workflow Phases

AGENTS.md defines no workflow phases. It is a static context file read at session start (or on each relevant tool use) by compatible agents. The agent's own planning is unaffected by AGENTS.md beyond having access to project context.

How Agents Use It

  1. Agent starts in a project directory
  2. Agent discovers AGENTS.md (in working directory and parent directories)
  3. Agent reads content as context for all subsequent tasks
  4. If testing instructions are present, agent runs them before finishing tasks
  5. If PR instructions are present, agent follows them when creating commits/PRs

Conflict Resolution

When multiple AGENTS.md files exist in a directory hierarchy:

  • The closest file to the currently edited file takes precedence
  • Explicit user chat prompts override everything

Approval Gates

None. The format is passive — no approval gates, no phase transitions, no user confirmation steps built into the convention.

Relationship to Development Workflow

AGENTS.md is meant to be checked into version control alongside code. It evolves with the project. Contributors to the project (both human and AI) can update it like any living documentation.

Real-World Examples

The website's ExamplesSection showcases AGENTS.md files from:

  • openai/codex — contributor guidelines for the Codex CLI itself
  • apache/airflow — massive project with complex dev setup instructions
  • temporalio/sdk-java — Java SDK with specific build and test conventions
  • PlutoLang/Pluto — programming language project with specialized build requirements

These examples demonstrate the format scaling from small projects to large open-source repositories.

06

Memory Context

AGENTS.md — Memory & Context (Extended)

Context Discovery

Compatible agents discover AGENTS.md through filesystem traversal from the working directory upward. The exact discovery algorithm is implementation-defined per agent — each tool independently decides how many levels to traverse and how to merge multiple files.

No Context Compaction Guidance

AGENTS.md provides no guidance on context window management. It predates (or ignores) the problem of large AGENTS.md files consuming significant context budget. The specification does not address truncation, summarization, or selective loading.

Hierarchical Context

The directory-scoping design enables hierarchical context inheritance:

/ (repo root)
  AGENTS.md          ← global project instructions
  packages/
    frontend/
      AGENTS.md      ← frontend-specific instructions (overrides root for this dir)
    backend/
      AGENTS.md      ← backend-specific instructions

This pattern is idiomatic for monorepos where different packages have different tech stacks, testing commands, and conventions.

What Goes in AGENTS.md

Per the specification and examples, effective AGENTS.md content includes:

  • Build/dev commands: exact commands to start the development environment
  • Test commands: how to run the full suite and targeted tests
  • Coding conventions: language/framework-specific style rules
  • PR/commit format: title templates, required checks
  • Project-specific pitfalls: things agents commonly get wrong in this codebase
  • Package manager: which manager to use (npm vs pnpm vs yarn) and why

What NOT to Include

The specification is silent on anti-patterns. Based on the minimal-format philosophy, instructions that are already in standard tooling config (ESLint, Prettier, CI pipelines) are redundant in AGENTS.md — the file is for instructions that are not machine-checkable.

07

Orchestration

AGENTS.md — Orchestration

Multi-Agent

No — AGENTS.md is a single-file format convention with no orchestration layer. The format does not define how multiple agents interact.

Orchestration Pattern

None. The format is consumed by a single agent at session start.

Execution Mode

Passive — AGENTS.md is read, not executed. Execution happens inside the agent's own runtime.

Prompt Chaining

None built into the format. If an author writes sequential instructions in AGENTS.md, execution depends entirely on the agent's interpretation.

Multi-Model

Not applicable. The format is tool-agnostic and model-agnostic.

Subagent Spawning

None. The format does not define subagents.

Isolation

Not applicable.

Cross-Tool Portability

Maximum — the explicit design goal is that AGENTS.md works in Codex, Cursor, RooCode, Aider, Gemini CLI, Windsurf, Copilot, and 20+ others. The format succeeds precisely because it requires no tool-specific primitives.

The Specification as Orchestration Document

The highest-level orchestration insight: AGENTS.md provides human-authored governance instructions that all participating agents must follow. In multi-agent systems where different agents work on the same repo (e.g., PR review bot + feature implementation bot), they share a single AGENTS.md, creating consistent behavior constraints across all agents without any coordination protocol.

08

Ui Cli Surface

AGENTS.md — UI / CLI Surface

CLI Binary

None. AGENTS.md is a format specification. No CLI ships with it.

Local UI

The repository includes a Next.js website (https://agents.md/), but this is a marketing/documentation site, not a local development UI. There is no local UI to run for using the format.

Website Sections (Reference, not Tooling)

The agents.md website serves informational purposes:

  • Hero: tagline and format intro
  • WhySection: rationale for the standard
  • CompatibilitySection: animated ticker of 20+ compatible AI tools
  • ExamplesSection: real AGENTS.md files from well-known open-source repos
  • HowToUseSection: step-by-step setup guide
  • FAQSection: 7 common questions with code examples

Development Commands (Website Only)

pnpm install    # install website dependencies
pnpm dev        # start local website dev server
pnpm lint       # lint website code
pnpm build      # production build (not for agent sessions)

These commands are for contributors to the agents.md website, not for users of the AGENTS.md format.

Format Authoring UX

The UX for using AGENTS.md is: open any text editor, create AGENTS.md, write markdown. There is no authoring tool, no validator, no preview mechanism.

Observability

None. The format has no observability surface. Whether an agent reads and follows AGENTS.md is not tracked or surfaced to the user by the format itself — it depends on the agent's UI.

Related frameworks

same archetype · same primary tool · same memory type

Context-Engineering Handbook ★ 9.0k

Provides a first-principles, research-grounded vocabulary and learning path for context engineering — the discipline of designing…

walkinglabs/learn-harness-engineering ★ 6.6k

Teach harness engineering from first principles (12 lectures + 6 projects) and provide a scaffolding skill (harness-creator) that…

Awesome Harness Engineering (walkinglabs) ★ 2.7k

Curate the authoritative reference list of articles, benchmarks, and tools for harness engineering — the practice of shaping the…

cline-memory-bank (nickbaumann98) ★ 581

Custom instructions + 6-file hierarchical Markdown memory bank so Cline maintains full project context across sessions, with a…

FPF (First Principles Framework) ★ 372

Provides a formal pattern language for making reasoning explicit, traceable, and publishable in mixed human/AI engineering work —…

nexu-io/harness-engineering-guide ★ 134

Provide a practical, code-first reference guide to harness engineering — from first principles to production patterns —…