# convex-expert

Скилл для работы с кодом в каталоге convex/: функции, схемы, индексы, валидаторы. Пригодится, когда агент пишет бэкенд на Convex.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 36200 установок · ★ 68
- Автор: convex
- Лицензия: Apache-2.0 · policy=mirror · начало файла — в конце страницы
- Исходник: https://github.com/convex/agent-skills/tree/HEAD/skills/convex-expert/SKILL.md
- Обновлён: 2026-10-13
- HTML: https://affpapa.org/nevibecode/skills/convex-expert

## Что делает

Скилл включается перед любой правкой файлов в `convex/`. Сначала он читает `convex/schema.ts` и `convex/_generated/ai/guidelines.md`, если тот есть. Дальше все функции пишутся в объектной форме, с валидаторами `args` и `returns` у каждой зарегистрированной функции.

Внутри — набор правил, которые обычные модели путают. Импорты берутся строго из `./_generated/server` и `./_generated/api`, иначе деплой падает. Чтение идёт через `.withIndex(...)`, а не `.filter()`. По умолчанию функции внутренние: `internalQuery`, `internalMutation`, `internalAction`, публичными их делают только под клиентский хук. Для чат-фич с LLM скилл берёт `@convex-dev/agent`, для многошаговых сценариев — `@convex-dev/workflow`.

Перед сдачей работы скилл проверяет, что всё компилируется и пушится: `npx tsc --noEmit` и пуш в деплой. Тут есть подвох. Если вы уже вошли в Convex, режим `CONVEX_AGENT_MODE=anonymous` перепривяжет `.env.local` и вы потеряете облачный деплой, поэтому анонимный режим годится только когда `npx convex whoami` не проходит.

## Установка

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

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

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

### Codex

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

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

### Cursor

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

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

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install convex/agent-skills convex-expert
```

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

### Gemini CLI

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

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

### Windsurf (Devin Desktop)

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

### OpenCode

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

### Claude.ai

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

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

## Когда брать
- писать функции Convex в объектной форме с валидаторами
- заменить `.filter()` на `.withIndex(...)` в путях чтения
- разложить импорты из `./_generated/server` и `./_generated/api` без ошибок деплоя
- добавить поле в заполненную таблицу через `v.optional(...)` и бэкфилл
- подключить `@convex-dev/agent` вместо самописной обвязки для чата

## Примеры запросов агенту
- добавь в convex/messages.ts мутацию для отправки сообщения
- перепиши этот запрос на withIndex вместо filter
- проверь, что бэкенд компилируется и пушится

## Похожие
- [convex](https://affpapa.org/nevibecode/skills/waynesutton-convex.md) — скилл · 5700 установок
- [convex-best-practices](https://affpapa.org/nevibecode/skills/convex-best-practices.md) — скилл · 3900 установок
- [appwrite-python](https://affpapa.org/nevibecode/skills/appwrite-python.md) — скилл · 1100 установок
- [replica-backend](https://affpapa.org/nevibecode/skills/replica-backend.md) — скилл · 613 установок
- [firebase](https://affpapa.org/nevibecode/plugins/firebase.md) — плагин · ★ 44635
- [prisma-client-api](https://affpapa.org/nevibecode/skills/prisma-client-api.md) — скилл · 391400 установок

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

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

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