context-engineering-intro README

The project's README from github.com/coleam00/context-engineering-intro. As one markdown file: README.md.

Context Engineering Template

A comprehensive template for getting started with Context Engineering - the discipline of engineering context for AI coding assistants so they have the information necessary to get the job done end to end.

Context Engineering is 10x better than prompt engineering and 100x better than vibe coding.

🚀 Quick Start

# 1. Clone this template
git clone https://github.com/coleam00/Context-Engineering-Intro.git
cd Context-Engineering-Intro

# 2. Set up your project rules (optional - template provided)
# Edit CLAUDE.md to add your project-specific guidelines

# 3. Add examples (highly recommended)
# Place relevant code examples in the examples/ folder

# 4. Create your initial feature request
# Edit INITIAL.md with your feature requirements

# 5. Generate a comprehensive PRP (Product Requirements Prompt)
# In Claude Code, run:
/generate-prp INITIAL.md

# 6. Execute the PRP to implement your feature
# In Claude Code, run:
/execute-prp PRPs/your-feature-name.md

📚 Table of Contents

What is Context Engineering?

Context Engineering represents a paradigm shift from traditional prompt engineering:

Prompt Engineering vs Context Engineering

Prompt Engineering:

Context Engineering:

Why Context Engineering Matters

  1. Reduces AI Failures: Most agent failures aren't model failures - they're context failures
  2. Ensures Consistency: AI follows your project patterns and conventions
  3. Enables Complex Features: AI can handle multi-step implementations with proper context
  4. Self-Correcting: Validation loops allow AI to fix its own mistakes

Template Structure

context-engineering-intro/
├── .claude/
│   ├── commands/
│   │   ├── generate-prp.md    # Generates comprehensive PRPs
│   │   └── execute-prp.md     # Executes PRPs to implement features
│   └── settings.local.json    # Claude Code permissions
├── PRPs/
│   ├── templates/
│   │   └── prp_base.md       # Base template for PRPs
│   └── EXAMPLE_multi_agent_prp.md  # Example of a complete PRP
├── examples/                  # Your code examples (critical!)
├── CLAUDE.md                 # Global rules for AI assistant
├── INITIAL.md               # Template for feature requests
├── INITIAL_EXAMPLE.md       # Example feature request
└── README.md                # This file

This template doesn't focus on RAG and tools with context engineering because I have a LOT more in store for that soon. ;)

Step-by-Step Guide

1. Set Up Global Rules (CLAUDE.md)

The CLAUDE.md file contains project-wide rules that the AI assistant will follow in every conversation. The template includes:

You can use the provided template as-is or customize it for your project.

2. Create Your Initial Feature Request

Edit INITIAL.md to describe what you want to build:

## FEATURE:
[Describe what you want to build - be specific about functionality and requirements]

## EXAMPLES:
[List any example files in the examples/ folder and explain how they should be used]

## DOCUMENTATION:
[Include links to relevant documentation, APIs, or MCP server resources]

## OTHER CONSIDERATIONS:
[Mention any gotchas, specific requirements, or things AI assistants commonly miss]

See INITIAL_EXAMPLE.md for a complete example.

3. Generate the PRP

PRPs (Product Requirements Prompts) are comprehensive implementation blueprints that include:

They are similar to PRDs (Product Requirements Documents) but are crafted more specifically to instruct an AI coding assistant.

Run in Claude Code:

/generate-prp INITIAL.md

Note: The slash commands are custom commands defined in .claude/commands/. You can view their implementation:

The $ARGUMENTS variable in these commands receives whatever you pass after the command name (e.g., INITIAL.md or PRPs/your-feature.md).

This command will:

  1. Read your feature request
  2. Research the codebase for patterns
  3. Search for relevant documentation
  4. Create a comprehensive PRP in PRPs/your-feature-name.md

4. Execute the PRP

Once generated, execute the PRP to implement your feature:

/execute-prp PRPs/your-feature-name.md

The AI coding assistant will:

  1. Read all context from the PRP
  2. Create a detailed implementation plan
  3. Execute each step with validation
  4. Run tests and fix any issues
  5. Ensure all success criteria are met

Writing Effective INITIAL.md Files

Key Sections Explained

FEATURE: Be specific and comprehensive

EXAMPLES: Leverage the examples/ folder

DOCUMENTATION: Include all relevant resources

OTHER CONSIDERATIONS: Capture important details

The PRP Workflow

How /generate-prp Works

The command follows this process:

  1. Research Phase

    • Analyzes your codebase for patterns
    • Searches for similar implementations
    • Identifies conventions to follow
  2. Documentation Gathering

    • Fetches relevant API docs
    • Includes library documentation
    • Adds gotchas and quirks
  3. Blueprint Creation

    • Creates step-by-step implementation plan
    • Includes validation gates
    • Adds test requirements
  4. Quality Check

    • Scores confidence level (1-10)
    • Ensures all context is included

How /execute-prp Works

  1. Load Context: Reads the entire PRP
  2. Plan: Creates detailed task list using TodoWrite
  3. Execute: Implements each component
  4. Validate: Runs tests and linting
  5. Iterate: Fixes any issues found
  6. Complete: Ensures all requirements met

See PRPs/EXAMPLE_multi_agent_prp.md for a complete example of what gets generated.

Using Examples Effectively

The examples/ folder is critical for success. AI coding assistants perform much better when they can see patterns to follow.

What to Include in Examples

  1. Code Structure Patterns

    • How you organize modules
    • Import conventions
    • Class/function patterns
  2. Testing Patterns

    • Test file structure
    • Mocking approaches
    • Assertion styles
  3. Integration Patterns

    • API client implementations
    • Database connections
    • Authentication flows
  4. CLI Patterns

    • Argument parsing
    • Output formatting
    • Error handling

Example Structure

examples/
├── README.md           # Explains what each example demonstrates
├── cli.py             # CLI implementation pattern
├── agent/             # Agent architecture patterns
│   ├── agent.py      # Agent creation pattern
│   ├── tools.py      # Tool implementation pattern
│   └── providers.py  # Multi-provider pattern
└── tests/            # Testing patterns
    ├── test_agent.py # Unit test patterns
    └── conftest.py   # Pytest configuration

Best Practices

1. Be Explicit in INITIAL.md

2. Provide Comprehensive Examples

3. Use Validation Gates

4. Leverage Documentation

5. Customize CLAUDE.md

Resources

context-engineering-intro (coleam00/context-engineering-intro)

Searching Database…

Что это такое?Подробный шаблон для практики context engineering (инжиниринга контекста): вы даёте AI-ассистентам для программирования вроде Claude Code документацию, примеры и правила, которые нужны им, чтобы доводить фичи до конца.
Это приложение, которое я устанавливаю, или набор файлов, которые копирую в свой проект?Это репозиторий-шаблон, который вы копируете, а не приложение: файл с правилами CLAUDE.md, файл запроса фичи INITIAL.md, папка examples/ и две собственные слэш-команды Claude Code, которые вы подстраиваете под свой проект.
Как выглядит сам рабочий процесс, когда он уже у меня есть?Описываете фичу в INITIAL.md, запускаете /generate-prp - она исследует кодовую базу и пишет план в PRPs/, затем запускаете /execute-prp, и ассистент планирует, реализует и дорабатывает код, пока тесты не пройдут.
Мне обязательно нужен именно Claude Code, или подойдёт другой AI-ассистент?Всё построено вокруг Claude Code - команды /generate-prp и /execute-prp лежат в .claude/commands/ - но в описании репозитория отмечено, что ту же стратегию можно применить с любым AI-ассистентом для программирования.
Есть ли что-то, что автор намеренно не включил?RAG и инструменты пока вне охвата - автор говорит, что у него на этот счёт припасено ещё много всего - так что шаблон сейчас покрывает только глобальные правила, запросы фич и workflow с PRP.
Чем context engineering отличается от prompt engineering?Prompt engineering - это искусная формулировка одной задачи, как записка на стикере. Context engineering - целая система из документации, примеров, правил, паттернов и валидации, как полноценный сценарий. Автор называет её в 10 раз лучше prompt engineering и в 100 раз лучше vibe coding.
Что такое PRP?Product Requirements Prompt: чертёж реализации с полным контекстом и документацией, пошаговой реализацией с точками проверки (validation gates), паттернами обработки ошибок и требованиями к тестам - как PRD, но написанный специально для того, чтобы инструктировать AI-ассистента для программирования.
Почему папка examples/ так важна?Потому что AI-ассистенты работают заметно лучше, когда видят образцы, на которые можно опираться. Вы кладёте туда паттерны из своего проекта - структуру кода, тестирование, интеграции и CLI - показывая и как надо делать, и как не надо, чтобы сгенерированный код соответствовал вашим соглашениям.
Creator
coleam00
Size
1.5 MB
Stars
13.9K
Updated
CommitMar 16
Age
1y
Commits · 90 Days