Tool Landscape
Every major LLM coding tool has its own way of consuming project guidelines. The formats differ, but the underlying need is the same: get project context into the modelβs system prompt so it generates code that fits your project.
This page gives you the lay of the land. For deep dives on each tool, see the Tool Guides.
The Common Pattern
All tools follow the same basic flow:
- You write guidelines in markdown (or close to it)
- You place them in a specific location in your repo
- The tool loads them into the modelβs context automatically
- The model uses them when generating code
What varies is the file location, format details, and how much control you have over loading.
Tool Overview
Claude Code β CLAUDE.md
- Location: Repo root (project-wide) or subdirectories (scoped)
- Format: Plain markdown
- Loading: Automatically injected into every conversation
- Key feature: Hierarchical β subdirectory CLAUDE.md files add context for that part of the codebase
- Limit: ~150-200 effective instructions before reliability drops
Claude Code also has strong workflow primitives:
- Hooks for runtime quality enforcement
- Skills for reusable task playbooks
- Sub-agents for delegated specialist execution
- Agent teams for teammate-style multi-agent collaboration
my-project/
βββ CLAUDE.md # Project-wide guidelines
βββ src/
β βββ CLAUDE.md # src-specific additions
β βββ api/
β βββ CLAUDE.md # API-specific additions
Cursor β .cursor/rules/*.mdc
- Location:
.cursor/rules/directory - Format: Markdown with YAML frontmatter
- Loading: Rules can be always-on, auto-matched by file glob, or manually invoked
- Key feature: Modular β each rule is a separate file with its own scope
---
description: API route conventions
globs: src/routes/**/*
alwaysApply: false
---
# API Routes
- Use Express Router
- All routes return typed responses
- Error handling via middleware, not in-route try/catch
GitHub Copilot β copilot-instructions.md
- Location:
.github/copilot-instructions.md(repo-wide) or.github/instructions/*.instructions.md(path-specific) - Format: Natural language markdown
- Loading: Automatic when the file exists
- Key feature: Simple β one file, natural language, no special syntax
AGENTS.md β The Emerging Standard
- Location: Repo root or any directory (closest file wins)
- Format: Standard markdown, no required structure
- Loading: Supported by growing list of tools (Cursor, Aider, Gemini CLI, Codex, and others)
- Key feature: Tool-agnostic β one file format, multiple tool support
- Governed by: Agentic AI Foundation under the Linux Foundation
Cross-Tool Strategy
You donβt need to choose one format. A practical approach:
- Write your guidelines once as structured content (the approach this guide teaches)
- Adapt to your primary tool β put the core guidelines in that toolβs format
- Add others as needed β if your team uses multiple tools, maintain format-specific files
The content is the same. Only the container changes.
Most guideline categories (project scope, tech stack, coding standards) translate directly across all formats. Tool-specific features like Cursorβs glob patterns or Claude Codeβs hierarchical loading are optimizations, not requirements.
What You Donβt Need
- You donβt need every toolβs format from day one
- You donβt need special syntax β plain markdown works everywhere
- You donβt need separate content per tool β the same guidelines serve all of them
Focus on writing good guidelines first. Formatting them for specific tools is a 10-minute task once the content exists.
Next: Three-Tier Model β how to prioritize which guidelines to write first.