
# Context Packs Overview

Context packs are curated bundles of documents with agent instructions. They let you define named collections of context that agents can request by name.

## Why packs?

Instead of agents guessing which documents are relevant, packs provide **opinionated, curated context** with instructions on how to use it.

A pack says: "Here are the 5 documents you need, and here's how to interpret them."

## Example

```yaml
# packs/engineering-essentials.yml
id: engineering-essentials
label: Engineering Essentials
description: Core engineering docs — architecture, API, and dev setup
includes:
  - nodes/architecture-overview
  - nodes/api-reference
  - nodes/development-setup
agent_instructions: >
  Use these documents to understand the system architecture, API surface,
  and development environment. Reference them when answering engineering
  questions or making technical decisions.
```

## Using packs

```bash
# Query all documents in a pack
ctx query "pack:engineering-essentials"

# View pack details
ctx pack show engineering-essentials

# List all packs
ctx pack list
```

## Packs with source nodes

Packs can include both static documents and source nodes. When a pack includes source nodes, the resolver hydrates them according to their `depends_on` ordering.

```yaml
includes:
  - nodes/architecture-overview
  - sources/current-sprint-tickets
  - sources/recent-pr-activity
agent_instructions: >
  Start with the architecture overview for context, then review
  the live sprint data and recent PRs.
```
