К основному содержанию
скилл CX Codex

convex-advisor — скилл для Claude Code: разбор инсайтов Convex

Читает 72-часовые инсайты деплоя Convex, находит причину каждого события в коде и отдаёт отчёт с исправлениями.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add convex/agent-skills --skill convex-advisor -a claude-code
Открыть на GitHub

Что делает convex-advisor

Скилл подключается к официальному MCP-серверу Convex и забирает типизированные события здоровья за 72 часа: упоры в лимиты чтения (documentsReadLimit, bytesReadLimit), приближение к порогам, конфликты записи (occFailedPermanently, occRetried). Каждое событие несёт доказательства — имя таблицы, объём прочитанных байт, id документа и число повторов.

Дальше скилл открывает код помеченной функции и ищет механизм. Для лимитов чтения это обычно .collect(), .filter() без индекса или отсутствие пагинации; лечится индексом с .withIndex, .take(n) или .paginate. Для конфликтов записи — горячие точки read-modify-write на общем документе; тут пригодится @convex-dev/sharded-counter или сужение набора чтения. Находки уходят в шину findings по specs/finding.schema.json, чтобы их могли подхватить фиксеры.

Инструмент insights работает только на облачных dev- и prod-деплоях, когда вы вошли как пользователь, и ему нужно около 72 часов трафика. На preview-деплоях и в контекстах с ключом деплоя он недоступен. Если событий нет, скилл честно об этом скажет и предложит convex-reviewer — выдумывать находки он не станет. Прогон всегда read-only: мутирующие флаги на prod не включаются, потому что это консультация, а не правка.

Какие задачи решает

  • объяснить, почему функция упирается в лимит чтения
  • найти горячую точку записи на общем счётчике
  • отличить пороговое событие от реального упора в лимит
  • связать событие инсайта с конкретной строкой кода
  • отдать находку фиксеру в общем формате

Примеры запросов агенту

  • прочитай инсайты деплоя за 72 часа и разбери каждое событие по коду
  • почему messages:list читает так много — найди причину и предложи фикс
  • проверь конфликты записи в деплое и скажи, что менять в коде

Как установить convex-advisor

1Через Skills CLI (Vercel)

npx skills add convex/agent-skills --skill convex-advisor -a claude-code

2Вручную: положить файлы

~/.claude/skills/convex-advisor/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/convex-advisor/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора32

convex-design Скилл помогает проектировать бэкенды на Convex: схему, функции, авторизацию, файлы и LLM-сценарии. Пригодится для новых и существующих Convex-проектов. CX Codex +1 36 000установок convex-reviewer Прогоняет функции в каталоге convex/ по чек-листу: авторизация, валидаторы, индексы, реактивность. Пригодится перед выкаткой бэкенда. CX Codex +1 36 100установок convex-docs Проверяет установленную в проекте версию Convex и подтягивает актуальную документацию в markdown вместо устаревшего кода из памяти модели. CX Codex +1 36 100установок convex-add Добавляет в текущее приложение Convex хостинг или другую серверную возможность. Пригодится, когда нужно подключить компонент по запросу через агента. CX Codex +1 35 900установок convex-crons Добавляет периодические фоновые задачи через crons в приложение на Convex. Пригодится, когда нужно настроить регулярное обслуживание базы или очистку данных. CX Codex +1 36 000установок convex-env Скилл настраивает переменные окружения и секреты Convex для приложения. Пригодится, когда значения нужно передавать в deployment и читать в actions. CX Codex +1 36 000установок convex-seed Заполняет таблицы базы данных Convex тестовыми строками или импортирует внешние данные. Помогает настроить окружение для разработки без ручного ввода. CX Codex +1 35 800установок convex-verify Скилл проверяет Convex-функции через реальные сценарии: создаёт данные, меняет пользователей и ловит ошибки авторизации. Нужен для проверки конкретной готовой функции. CX Codex +1 35 800установок

Похожие

convex-migrations waynesutton Проводит изменение схемы Convex через шесть шагов: сделать поле необязательным, залить данные батчами, переключить валидатор, подчистить. Пригодится, когда npx convex dev падает на существующих документах. CX Codex +1 2 600установок convex waynesutton Маршрутизирует задачи по Convex к специализированным скиллам и задаёт базовые правила разработки бэкенда. Пригодится на старте любого проекта с Convex. CX Codex +1 5 700установок postgresql-database-engineering manutej Помогает проектировать схемы, выбирать индексы и оптимизировать медленные запросы в PostgreSQL. Пригодится при партиционировании больших таблиц и настройке репликации. CX Codex +1 1 800установок magento-performance-analyst maxnorm Скилл ведёт агента по профилированию Magento 2: ищет узкие места, разбирает медленные запросы и планирует оптимизации. CX Codex +1 427установок mongodb-performance-advisor официальный github Анализирует запросы к MongoDB в кодовой базе и собирает метрики через MCP-сервер в режиме чтения. Помогает найти медленные пайплайны и оптимизировать индексы. 223установок django-perf-review getsentry Скилл проверяет Django-код на N+1 запросы, неограниченные queryset и отсутствующие индексы. Пригодится перед релизом или когда страница тормозит на больших таблицах. CX Codex +1 2 900установок

Вопросы о convex-advisor

Как установить convex-advisor в Claude?

Выполните npx skills add convex/agent-skills --skill convex-advisor -a claude-code. Скилл появится в ~/.claude/skills/convex-advisor/SKILL.md.

Что делает convex-advisor?

Читает 72-часовые инсайты деплоя Convex, находит причину каждого события в коде функции и выдаёт отчёт с исправлениями, отсортированный по серьёзности.

Почему скилл ничего не нашёл?

Инструмент insights доступен только на облачных dev- и prod-деплоях при входе как пользователь и требует около 72 часов трафика. Без событий находок не будет — скилл предложит convex-reviewer.

Исходный текст

SKILL.md · Apache-2.0
---
name: convex-advisor
description: "Read the Convex deployment's 72h insights (read limits, OCC contention), root-cause each event in code, report evidence-backed perf/cost findings with fixes."
---

<!-- GENERATED from convex-agents content/capabilities/convex-advisor.json — do not edit by hand. -->

# Live-deployment advisor

Static review guesses; the deployment KNOWS. The official Convex MCP ships an `insights` tool with typed 72h health events per function — documentsReadLimit / bytesReadLimit (hard limit hits), documentsReadThreshold / bytesReadThreshold (approaching), occFailedPermanently / occRetried (write contention) — each carrying evidence (table_name, bytes_read, documents_read, occ document id + retry count). The advisor turns each event into a root-caused finding by reading the flagged function's actual code, and emits findings on the findings bus (specs/finding.schema.json) so fixers can be dispatched and launch-readiness can score.

## Workflow

1. GUARD: run deploy-guard step 0-1 — identify + announce the deployment being read. Reading insights/logs on prod is allowed read-only; never enable mutating prod access for an advisory pass.
2. GATHER (deterministic, via the official Convex MCP): `status` → deployment selector; `insights` → the typed 72h events; `tables` → schema + row counts; `functionSpec` → the public/internal surface. The `insights` tool is only available on cloud dev/prod deployments when logged in as a user (not on previews or deploy-key-scoped contexts) and needs ~72h of traffic; if it returns nothing or is unavailable, say so and fall back to offering convex-reviewer — do NOT invent findings.
3. ROOT-CAUSE each insight event by reading the flagged function's code:
   - bytesReadThreshold/Limit or documentsReadThreshold/Limit → look for `.collect()` / unindexed `.filter()` / missing pagination on the named table; the fix is an index + `.withIndex`, `.take(n)`, or `.paginate` (convex-expert patterns), or an aggregate component for counting shapes.
   - occRetried / occFailedPermanently → look for read-modify-write hotspots on the named document (shared counters, status toggles); the fix is @convex-dev/sharded-counter, narrowing the read set, or moving contention to a workpool.
   - repeated failures in `logs` (status: failure) → classify: crash loop in a cron, validator rejections, unhandled error shapes.
4. EMIT findings per specs/finding.schema.json: class perf/correctness/cost, severity from the insight kind (limit hits = high, thresholds = med, retried = med, permanent OCC failure = high), locus {kind: deployment, functionId, tableName}, evidence {kind: insight-event, detail: the raw event}, confidence: confirmed (the event happened — it is not a hypothesis), fixCapability + autofixable where the repair is mechanical.
5. REPORT: findings ranked by severity, each with (a) the runtime evidence in one line ('messages:list read 4.2MB from messages 31× yesterday'), (b) the code-level root cause with file:line, (c) the concrete fix and which capability applies it. Offer to apply fixes; apply only on confirmation, then re-run `insights` after traffic to verify the trend, or re-run the static check immediately.
6. Scope discipline: this is a health/perf/cost pass. Route authz findings to convex-authz, code-idiom findings to convex-reviewer, error triage to sentinel — emit a pointer finding rather than duplicating their work.

## Rules

- Evidence-not-vibes: every finding cites a real insight event, log line, or table stat — if the deployment has no evidence, the advisor has no findings (offer convex-reviewer instead).
- Read-only by construction: an advisory pass never mutates any deployment and never enables prod mutation flags (deploy-guard discipline applies).
- Root-cause in the code before reporting: an insight event names the symptom; the finding must name the line and the mechanism.
- Emit on the findings bus (specs/finding.schema.json), confidence: confirmed — runtime events are facts, not hypotheses.
- Severity from the event kind: limit-hit / permanent-OCC-failure = high; threshold / retried = med.
- Stay in lane: perf/cost/health only — hand authz to convex-authz, style to convex-reviewer, error triage to sentinel.
- Prefer component fixes over hand-rolls when they match (sharded-counter for OCC on counters, aggregate for count scans) — same bias as suggest.

© convex · Apache-2.0 · convex/agent-skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой