# reflect

Читает журнал .harness и заметки с правками разработчика, а потом предлагает изменения правил и порогов, чтобы проект перестал повторять одни и те же ошибки.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · ★ 74
- Автор: sneg55
- Лицензия: MIT · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/sneg55/agent-starter/tree/HEAD/skills/reflect/SKILL.md
- Обновлён: 2026-09-14
- HTML: https://affpapa.org/nevibecode/skills/sneg55-reflect

## Что делает

Скилл проходит четыре фазы. Сначала собирает сигнал: гоняет скрипт статистики по журналу `.harness/ledger.jsonl`, читает правила проекта в `CLAUDE.md`, свежие заметки типа `feedback` и прошлый отчёт из `.harness/reflections/`. Потом группирует повторяющиеся проблемы: каждая строка `recurring <rule> <prefix> <count>` — это один кластер трения, а разовые события отбрасываются.

На каждую группу готовится ровно одно предложение. Тип выбирается по ситуации: правило проекта дописывается в `CLAUDE.md`, порог стража меняется диффом в `.claude/settings.json` или хуке, механически ловимую ошибку закрывает правило линтера в `eslint.config.mjs` или `biome.jsonc`, а долгое «почему» уходит в заметку памяти или `docs/adr/`. Все предложения показываются нумерованным списком, и ничего не применяется без вашего согласия.

Дальше вы одобряете, правите или отклоняете каждый пункт, одобренное коммитится, а в `.harness/reflections/YYYY-MM-DD.md` ложится отчёт со снимком метрик и причинами отказов. Отчёт попадает в git, а сырой журнал остаётся в `.gitignore`. Учтите: без установленных хуков в `~/.claude/hooks/` скрипт статистики не найдётся, и тогда его нужно запускать из того места, где проект держит хуки. Если скрипт выдаёт одни нули, сигнала ещё нет и размышлять не над чем.

## Установка

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

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sneg55/agent-starter --skill reflect -a claude-code
```

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

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sneg55/agent-starter --skill reflect -a codex
```

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

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sneg55/agent-starter --skill reflect -a cursor
```

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install sneg55/agent-starter reflect
```

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

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add sneg55/agent-starter --skill reflect -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/sneg55/agent-starter --path skills/reflect
```

### Windsurf (Devin Desktop)

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

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add sneg55/agent-starter --skill reflect -a opencode
```

### Claude.ai

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

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

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

## Примеры запросов агенту
- Запусти reflect и посмотри, какие проверки повторяются чаще всего
- Собери кластеры из журнала `.harness/ledger.jsonl` и предложи по одному изменению на каждый
- Запиши отчёт о размышлении в `.harness/reflections/` и сравни метрику с прошлой

## Похожие
- [memory-reflect](https://affpapa.org/nevibecode/skills/memory-reflect.md) — скилл · 1200 установок
- [self-improving-agent](https://affpapa.org/nevibecode/plugins/self-improving-agent.md) — плагин · ★ 28786
- [claude-self-reflect](https://affpapa.org/nevibecode/plugins/claude-self-reflect.md) — плагин · ★ 228
- [capability-evolver](https://affpapa.org/nevibecode/skills/capability-evolver.md) — скилл · 4900 установок
- [ultracite](https://affpapa.org/nevibecode/skills/ultracite.md) — скилл · 11400 установок
- [mantis-reflect](https://affpapa.org/nevibecode/skills/mantis-reflect.md) — скилл · 1500 установок

## Другие версии с тем же именем
- [reflect · backnotprop](https://affpapa.org/nevibecode/skills/backnotprop-reflect.md) — 5300 установок
- [reflect · alirezarezvani](https://affpapa.org/nevibecode/skills/reflect.md) — 320 установок
- [reflect · neolabhq](https://affpapa.org/nevibecode/skills/neolabhq-reflect.md) — 1400 установок
- [reflect · haowjy](https://affpapa.org/nevibecode/skills/haowjy-reflect.md) — 378 установок

Из того же набора: [sneg55/agent-starter](https://affpapa.org/nevibecode/by/sneg55/agent-starter.md) — 2 карточки

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

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