convex-insights

작성자: get-convex

실행 중인 Convex 앱의 로그와 상태를 자연어로 조회합니다(공식 MCP): 실패, 느리거나 비용이 많이 드는 함수, 배포 인과 관계 — 범위가 지정되고 증거 기반이며 대시보드 딥 링크를 포함합니다.

npx skills add https://github.com/get-convex/agent-skills --skill convex-insights

Query logs + health in natural language

The deployment already records what happened; the agent just has to ask well. This capability is a disciplined wrapper over the official Convex MCP's read tools (logs, insights, functionSpec, status) that turns operational questions into narrow, evidence-returning queries and hands back answers a human can one-click verify in the dashboard. The discipline is copied from the observability MCP surface that works best in the wild: discover fields before querying, three views not fifteen tools, token-frugal output, and a dashboard deep link on every answer.

Workflow

  1. GUARD: deploy-guard step 0-1 — identify + announce which deployment is being read. Reading logs/insights is read-only; never enable prod mutation flags for an insights pass.
  2. DISCOVER before you query — never guess identifiers. Use functionSpec to list the real function names and status for the deployment/version. Note the tool limits up front: logs takes only --history <n> (a COUNT, not a time window), --success, --jsonl, --prod, --deployment — there is NO server-side status/function/requestId/time filter; insights has no function filter and is cloud dev/prod + user-auth only. So you fetch a recent window and filter CLIENT-SIDE.
  3. PICK ONE OF THREE VIEWS and fetch the raw window, then filter locally:
    • failures view → logs --history <n> --jsonl, then locally keep failures + group by function + error message, returning counts + the first stack per group. Answers 'what's erroring', 'what failed after deploy'.
    • health view → insights (cloud only): the typed 72h read-limit / OCC events. Surface + rank them, but hand perf/cost ROOT-CAUSING and fixes to convex-advisor — emit those as pointer findings, do not own the perf-fix framing here.
    • trace view → logs --history <n> --jsonl then locally filter to one requestId/function to read the full execution. Answers 'why did THIS call fail'.
  4. SCOPE by fetching a bounded recent window (a sensible --history count) and filtering client-side to the function/status/requestId asked about; when the window is large, aggregate (counts by function/message) rather than dumping lines.
  5. ANSWER with (a) the one-line finding, (b) the evidence (counts + one representative stack/log line), and (c) WHEN POSSIBLE an agent-constructed dashboard deep link (dashboard.convex.dev, the deployment's Logs/Functions view) for human verification — no tool returns the link, so build it from the deployment name + function; never a raw log dump as the answer.
  6. CROSS-CHECK deploy causality when asked 'did my deploy break this': compare the failure onset (from the log timestamps) against the deployment version from status; correlate, don't assert.
  7. HAND OFF, don't fix here: a perf/cost cause → convex-advisor (which owns those fixes); a code defect → convex-reviewer/convex-authz; a live error to react to going forward → monitor/sentinel. Emit findings on the bus (specs/finding.schema.json) — primarily observability, with perf/cost as pointer findings to advisor — so a composite pass can pick them up.

Rules

  • Discover real function/field names (functionSpec/status) before filtering — never guess identifiers, never return a confusing empty result for a name the app doesn't have.
  • logs and insights have NO server-side status/function/requestId/time-window filter (logs takes only a --history COUNT; insights is cloud-only) — fetch a bounded recent window and filter CLIENT-SIDE; say so rather than implying params that don't exist.
  • One of three views per question (failures / health / trace) — don't fan out into many speculative tool calls.
  • No tool returns a dashboard link — construct it from the deployment name + function when possible for human verification; never answer with a raw log dump.
  • Read-only always: an insights pass runs no mutation and never enables prod mutation flags (deploy-guard discipline).
  • Stay a reader and defer perf/cost fixes to convex-advisor: emit primarily observability, route perf/cost as POINTER findings so advisor uniquely owns the perf-fix framing; forward-looking reaction goes to monitor/sentinel.

get-convex의 다른 스킬

convex-performance-audit
get-convex
Convex 성능을 읽기, 구독, 쓰기 경합 및 함수 제한 측면에서 감사합니다. 느린 기능, 인사이트 발견, OCC 충돌 또는 읽기 증폭에 사용하세요.
developmentdatabasedata-analysis
convex
get-convex
일반적인 Convex 요청을 올바른 프로젝트 스킬로 라우팅합니다. 사용자가 어떤 Convex 스킬을 사용할지 묻거나 불완전하게 지정된 Convex 앱 작업을 제공할 때 사용하세요.
developmentdatabase
convex-setup-auth
get-convex
Convex 인증, 신원 매핑 및 접근 제어를 설정합니다. Convex 앱에서 로그인, 인증 제공자, 사용자 테이블, 보호된 함수 또는 역할에 사용하세요.
developmentdatabaseapi
convex-quickstart
get-convex
앱에 Convex를 생성하거나 추가합니다. 새 Convex 프로젝트, npm create convex@latest, 프론트엔드 설정, 환경 변수, 또는 첫 npx convex dev 실행에 사용합니다.
developmentdatabase
convex-migration-helper
get-convex
Convex 스키마 및 데이터 마이그레이션을 widen-migrate-narrow와 @convex-dev/migrations로 계획합니다. 스키마 변경, 백필, 테이블 재구성 또는 무중단 롤아웃에 사용하세요.
developmentdatabase
convex-create-component
get-convex
재사용 가능한 Convex 컴포넌트를 구축하며, 격리된 테이블과 앱 지향 API를 제공합니다. 새 컴포넌트, 재사용 가능한 백엔드 모듈, 통합 또는 컴포넌트 경계 작업에 사용하세요.
developmentdatabase
convex-migrate
get-convex
배포된 Convex 앱에서 @convex-dev/migrations를 사용하여 스키마를 마이그레이션하고 데이터를 백필합니다.
developmentdatabase
convex-optimize
get-convex
기존 Convex 앱을 감사하고 최적화합니다: 보안, 확장, 업그레이드, 관찰 가능성.