Skip to content
Back to skills

Establishing Project Context

ASecurity

Use when entering a project for the first time, or when the user asks to establish shared language, define domain terms, or create a project glossary.

  • 1,315 stars
  • 0 votes
  • 0 copies
  • 3 views
  • Added May 26, 2026
developmentgodebuggingcode-reviewdocumentation

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned May 27, 2026

npx -y skills add GanyuanRan/Aegis --skill establishing-project-context --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Establishing Project Context?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Establishing Project Context
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ganyuanran-establishing-project-context/badge)](https://www.skillsdirectory.com/skills/ganyuanran-establishing-project-context)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: establishing-project-context
description: Use when entering a project for the first time, or when the user asks to establish shared language, define domain terms, or create a project glossary.
---

# Establishing Project Context

## Overview

Maintain a `CONTEXT.md` file at the project root that defines the project's domain language — a single source of truth for terminology shared between the agent and the human. Borrowed from Domain-Driven Design's "ubiquitous language" principle.

CONTEXT.md is about the user's project domain, NOT about Aegis governance. For Aegis governance docs, see `docs/current/` and `docs/adr/`.

## Where CONTEXT.md Lives

- **Single project**: `<project_root>/CONTEXT.md`
- **Monorepo / multiple bounded contexts**: `<project_root>/CONTEXT-MAP.md` maps context names to their locations:

  ```
  ordering → src/ordering/CONTEXT.md
  billing  → src/billing/CONTEXT.md
  ```

  System-wide terms still go in root `CONTEXT.md`.

Create files lazily — only when you have something to write.

## When to Use

**On first entering a project:**

1. Check if `CONTEXT.md` (or `CONTEXT-MAP.md`) exists
2. If not, ask briefly: "Want me to set up a shared language glossary for this project?"
3. If yes, start with 3-5 core domain terms, then iterate

**During brainstorming / planning / debugging:**

- When user uses a vague or overloaded term, propose a precise canonical term
- Check against existing CONTEXT.md glossary before proposing
- Write each term resolution immediately — don't batch

## CONTEXT.md Format

See `CONTEXT-FORMAT.md` in this directory for the canonical template.

Key rules:
- Only include terms meaningful to domain experts
- Don't couple CONTEXT.md to implementation details
- Each term: name, one-sentence definition, and what to avoid calling it
- Record resolved ambiguities so they aren't re-litigated

## Integration with Aegis Workflows

- **brainstorming**: Reads CONTEXT.md in Step 1 (Explore project context), tightens terminology during Step 4 (Ask clarifying questions)
- **writing-plans**: Uses CONTEXT.md terms in plan task descriptions
- **systematic-debugging**: References CONTEXT.md for canonical component names

## Boundary: CONTEXT.md vs baseline/

CONTEXT.md and `docs/aegis/baseline/` serve different purposes:

| | CONTEXT.md | baseline/ |
|---|-----------|-----------|
| What | Domain language, ubiquitous terminology | Technical architecture snapshot |
| Audience | Domain experts + agents | Agents + developers |
| Content | Terms, definitions, resolved ambiguities | Ownership, contracts, dependencies, anti-patterns |
| Updates | Immediately on term resolution | After architecture review or material change |
| Trigger | establishing-project-context skill | brainstorming, writing-plans, code-review, systematic-debugging |

Do NOT put implementation details in CONTEXT.md.
Do NOT put domain glossary terms in baseline/.

## Red Flags

- Don't turn CONTEXT.md into architecture documentation (that's ADRs)
- Don't add implementation details (class names, file paths, config keys)
- Don't batch term updates — write immediately when resolved
- Don't create CONTEXT.md without user consent

Files in this skill

  • CONTEXT-FORMAT.md967 B
  • SKILL.md3.1 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.