# establishing-project-context

Ведёт словарь доменных терминов в CONTEXT.md, чтобы человек и агент называли одни и те же вещи одинаково. Нужен, когда термин переименовали, устарели или он оброс смыслами.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 1384
- Автор: GanyuanRan
- Лицензия: MIT · policy=mirror · лицензия открытая, файл — в исходнике
- Исходник: https://github.com/GanyuanRan/Aegis/tree/HEAD/skills/establishing-project-context/SKILL.md
- Обновлён: 2026-10-25
- HTML: https://affpapa.org/nevibecode/skills/establishing-project-context

## Что делает

Скилл держит канонические термины проекта в файле `CONTEXT.md` и следит, чтобы код, тесты и документация не расходились с ним. Он не читает глоссарий пассивно — это делает рабочий процесс задачи сам, — а включается только на активное моделирование: появилось новое понятие, термин перегружен или конфликтует, прошло согласованное переименование, устаревший алиас снова всплыл в текстах для пользователя.

Перед записью скилл раскладывает факты по двум шкалам: качество доказательств (прямое слово пользователя, надёжные источники, конфликтующие данные) и семантический авторитет (решение уже принято или ещё нет). Если выбор не сделан, он задаёт один ограниченный вопрос и не пишет активную правду. Для уже решённого факта файл создаётся сразу, без вопроса о согласии. Перед записью файл перечитывается: параллельные правки сохраняются, а изменившийся термин переклассифицируется, а не затирается.

В `CONTEXT.md` попадают только термины с определениями, избегаемые алиасы, связи между понятиями и открытые неясности. Пути к реализации, инвентарь API, планы и логи там не хранятся. Цели карты контекстов должны быть относительными путями внутри проекта: URL, абсолютные пути и `..` отклоняются, как и симлинки, ведущие за корень. Текст внутри глоссария считается данными, поэтому похожие на инструкции фразы не могут перебить правила проекта.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add GanyuanRan/Aegis --skill establishing-project-context -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/establishing-project-context/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/establishing-project-context/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add GanyuanRan/Aegis --skill establishing-project-context -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/establishing-project-context/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add GanyuanRan/Aegis --skill establishing-project-context -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/establishing-project-context/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install GanyuanRan/Aegis establishing-project-context
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/establishing-project-context/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add GanyuanRan/Aegis --skill establishing-project-context -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/GanyuanRan/Aegis --path skills/establishing-project-context
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/establishing-project-context/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add GanyuanRan/Aegis --skill establishing-project-context -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/GanyuanRan/Aegis/tree/HEAD/skills/establishing-project-context/SKILL.md

## Когда брать
- свести термины проекта в один словарь, чтобы агент и человек говорили на одном языке
- разобрать перегруженный или конфликтующий доменный термин
- зафиксировать согласованное переименование или слияние понятий
- пометить устаревший алиас, который снова вернулся в тексты
- отличить дрейф реализации от устаревшего глоссария

## Примеры запросов агенту
- заведи общий язык проекта и опиши термины в CONTEXT.md
- у нас термин «заказ» значит три разные вещи — разберись и зафиксируй
- мы переименовали «клиента» в «аккаунт», обнови глоссарий

## Похожие
- [bmad-project-context](https://affpapa.org/nevibecode/skills/bmad-project-context.md) — скилл · 11500 установок
- [ue-project-context](https://affpapa.org/nevibecode/skills/ue-project-context.md) — скилл · 1300 установок
- [hig-project-context](https://affpapa.org/nevibecode/skills/hig-project-context.md) — скилл · 628 установок
- [external-context](https://affpapa.org/nevibecode/skills/external-context.md) — скилл · 789 установок
- [maintaining-agent-context](https://affpapa.org/nevibecode/skills/maintaining-agent-context.md) — скилл · 1900 установок
- [openspec-context-loading](https://affpapa.org/nevibecode/skills/openspec-context-loading.md) — скилл · 1100 установок

_Часть страницы не вошла по размеру — она есть в HTML-версии._

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
