Agent skill

Convex Performance Audit

by spokvulcan in spokvulcan/poker-planning

Audits Convex performance for reads, subscriptions, write contention, and function limits.

MITAuto-check passedProduct & Project Management

Install Convex Performance Audit

skills CLI
$ npx skills add spokvulcan/poker-planning --skill convex-performance-audit -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install spokvulcan/poker-planning convex-performance-audit --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/spokvulcan/poker-planning.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/convex-performance-audit .claude/skills/convex-performance-audit && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
convex-performance-audit
GitHub stars
114
Used in
7 other repos
Token cost
~1.9k tokens
SKILL.md length
964 words
Files
7 (incl. references, assets)
Skills in repo
6
Repo updated
First seen
Licence
MIT

At a glance

Audits Convex performance for reads, subscriptions, write contention, and function limits.

  • Works in 5 steps: Scope the problem → Trace the full read and write set → Apply fixes from the relevant reference → …
  • Insights findings
  • SKILL.md covers When to Use, When Not to Use, Guardrails and First Step: Gather Signals, plus 5 more sections
  • Calls npx

What it does

Convex Performance Audit is an agent skill from spokvulcan/poker-planning. Audits Convex performance for reads, subscriptions, write contention, and function limits. Use for slow features, insights findings, OCC conflicts, or read amplification.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 9 other files, including reference files and assets (for example `agents/openai.yaml`, `references/function-budget.md` and `references/hot-path-rules.md`).

It sits in Product & Project Management, covering Sprint planning and agile. The repository describes itself as: Free open-source planning poker for Scrum teams. No registration required. Real-time estimation for remote agile teams. The licence is MIT.

When your agent uses it

  • Insights findings
  • Read amplification

Example prompts

  • “Use the convex-performance-audit skill to audit Convex performance for reads, subscriptions, write contention, and function limits”
  • “/convex-performance-audit”

Requirements

  • Node.js

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Scope the problem
  2. Trace the full read and write set
  3. Apply fixes from the relevant reference
  4. Fix sibling functions together
  5. Verify before finishing

What it can do on your machine

Read from SKILL.md and the folder at commit 665a13f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • docs.convex.dev

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Convex Performance Audit loads about 1.9k tokens when it runs, and up to ~10k if it reads all its reference files. Until then it costs about 49 tokens; SKILL.md has 964 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~49
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~10k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from spokvulcan/poker-planning at commit 665a13f, republished under its MIT licence (© spokvulcan). 964 words, ~1,899 tokens.

Download SKILL.mdSave it as .claude/skills/convex-performance-audit/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.
name
convex-performance-audit
description
Audits Convex performance for reads, subscriptions, write contention, and function limits. Use for slow features, insights findings, OCC conflicts, or read amplification.

Convex Performance Audit

Diagnose and fix performance problems in Convex applications, one problem class at a time.

When to Use

  • A Convex page or feature feels slow or expensive
  • npx convex insights --details reports high bytes read, documents read, or OCC conflicts
  • Low-freshness read paths are using reactivity where point-in-time reads would do
  • OCC conflict errors or excessive mutation retries
  • High subscription count or slow UI updates
  • Functions approaching execution or transaction limits
  • The same performance pattern needs fixing across sibling functions

When Not to Use

  • Initial Convex setup, auth setup, or component extraction
  • Pure schema migrations with no performance goal
  • One-off micro-optimizations without a user-visible or deployment-visible problem

Guardrails

  • Prefer simpler code when scale is small, traffic is modest, or the available signals are weak
  • Do not recommend digest tables, document splitting, fetch-strategy changes, or migration-heavy rollouts unless there is a measured signal, a clearly unbounded path, or a known hot read/write path
  • In Convex, a simple scan on a small table is often acceptable. Do not invent structural work just because a pattern is not ideal at large scale

First Step: Gather Signals

Start with the strongest signal available:

  1. If deployment Health insights are already available from the user or the current context, treat them as a first-class source of performance signals.
  2. If CLI insights are available, run npx convex insights --details. Use --prod, --preview-name, or --deployment-name when needed.
    • If the local repo's Convex CLI is too old to support insights, try npx -y convex@latest insights --details before giving up.
  3. If the repo already uses convex-doctor, you may treat its findings as hints. Do not require it, and do not treat it as the source of truth.
  4. If runtime signals are unavailable, audit from code anyway, but keep the guardrails above in mind. Lack of insights is not proof of health, but it is also not proof that a large refactor is warranted.

Signal Routing

After gathering signals, identify the problem class and read the matching reference file.

SignalReference
High bytes or documents read, JS filtering, unnecessary joinsreferences/hot-path-rules.md
OCC conflict errors, write contention, mutation retriesreferences/occ-conflicts.md
High subscription count, slow UI updates, excessive re-rendersreferences/subscription-cost.md
Function timeouts, transaction size errors, large payloadsreferences/function-budget.md
General "it's slow" with no specific signalStart with references/hot-path-rules.md

Multiple problem classes can overlap. Read the most relevant reference first, then check the others if symptoms remain.

Escalate Larger Fixes

If the likely fix is invasive, cross-cutting, or migration-heavy, stop and present options before editing.

Examples:

  • introducing digest or summary tables across multiple flows
  • splitting documents to isolate frequently-updated fields
  • reworking pagination or fetch strategy across several screens
  • switching to a new index or denormalized field that needs migration-safe rollout

When correctness depends on handling old and new states during a rollout, consult skills/convex-migration-helper/SKILL.md for the migration workflow.

Workflow

1. Scope the problem

Pick one concrete user flow from the actual project. Look at the codebase, client pages, and API surface to find the flow that matches the symptom.

Write down:

  • entrypoint functions
  • client callsites using useQuery, usePaginatedQuery, or useMutation
  • tables read
  • tables written
  • whether the path is high-read, high-write, or both
2. Trace the full read and write set

For each function in the path:

  1. Trace every ctx.db.get() and ctx.db.query()
  2. Trace every ctx.db.patch(), ctx.db.replace(), and ctx.db.insert()
  3. Note foreign-key lookups, JS-side filtering, and full-document reads
  4. Identify all sibling functions touching the same tables
  5. Identify reactive stats, aggregates, or widgets rendered on the same page

In Convex, every extra read increases transaction work, and every write can invalidate reactive subscribers. Treat read amplification and invalidation amplification as first-class problems.

Show full SKILL.md (359 more words)Show less
3. Apply fixes from the relevant reference

Read the reference file matching your problem class. Each reference includes specific patterns, code examples, and a recommended fix order.

Do not stop at the single function named by an insight. Trace sibling readers and writers touching the same tables.

4. Fix sibling functions together

When one function touching a table has a performance bug, audit sibling functions for the same pattern.

After finding one problem, inspect both sibling readers and sibling writers for the same table family, including companion digest or summary tables.

Examples:

  • If one list query switches from full docs to a digest table, inspect the other list queries for that table
  • If one mutation isolates a frequently-updated field or splits a hot document, inspect the other writers to the same table
  • If one read path needs a migration-safe rollout for an unbackfilled field, inspect sibling reads for the same rollout risk

Do not leave one path fixed and another path on the old pattern unless there is a clear product reason.

5. Verify before finishing

Confirm all of these:

  1. Results are the same as before, no dropped records
  2. Eliminated reads or writes are no longer in the path where expected
  3. Fallback behavior works when denormalized or indexed fields are missing
  4. Frequently-updated fields are isolated from widely-read documents where needed
  5. Every relevant sibling reader and writer was inspected, not just the original function

Reference Files

  • references/hot-path-rules.md - Read amplification, invalidation, denormalization, indexes, digest tables
  • references/occ-conflicts.md - Write contention, OCC resolution, hot document splitting
  • references/subscription-cost.md - Reactive query cost, subscription granularity, point-in-time reads
  • references/function-budget.md - Execution limits, transaction size, large documents, payload size

Also check the official Convex Best Practices page for additional patterns covering argument validation, access control, and code organization that may surface during the audit.

Checklist

  • Gathered signals from insights, dashboard, or code audit
  • Identified the problem class and read the matching reference
  • Scoped one concrete user flow or function path
  • Traced every read and write in that path
  • Identified sibling functions touching the same tables
  • Applied fixes from the reference, following the recommended fix order
  • Fixed sibling functions consistently
  • Verified behavior and confirmed no regressions

© spokvulcan, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 6 other files (references, assets) in .agents/skills/convex-performance-audit of spokvulcan/poker-planning.

  • SKILL.md
  • agents/openai.yaml
  • assets/icon.svg
  • references/function-budget.md
  • references/hot-path-rules.md
  • references/occ-conflicts.md
  • references/subscription-cost.md

Open the folder on GitHubat commit 665a13f

Used in 7 other repositories

We found 8 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 7 other GitHub owners. This page covers the copy in spokvulcan/poker-planning, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Convex Performance Audit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Convex Performance Audit compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Convex Performance Audit this skillspokvulcan/poker-planning1147 repos~1.9kAutomated safety check: PassMIT
Agile Product Owneralirezarezvani/claude-skills28k3 repos~3.2kAutomated safety check: PassMIT
Walking Skeleton Roadmap Scopingprime-radiant-inc/iterative-development181—~1.7kAutomated safety check: PassApache-2.0
Triagejoa23/linear-cli144—~699Automated safety check: PassMIT
Tapd Iteration PlanTencentBlueKing/bk-bcs840—~1.6kAutomated safety check: PassCustom licence
Track Backlogcdiggins/plato106—~1kAutomated safety check: PassMIT

Similar skills

  • Agile Product Owner

    alirezarezvani/claude-skills

    Writes INVEST-checked user stories with acceptance criteria, splits epics, plans sprints from velocity and ranks the backlog with a weighted score.

    28k GitHub starsUsed in 3 repos~3.2k tokens
    Product & Project ManagementAuto-check passed
  • Walking Skeleton Roadmap Scoping

    prime-radiant-inc/iterative-development

    Turns extracted requirements into a roadmap by choosing a walking skeleton iteration with its first journey scenario and ordering the remaining work into follow-on iterations.

    181 GitHub stars~1.7k tokensUpdated 4 mo ago
    Product & Project ManagementAuto-check passed
  • Triage

    joa23/linear-cli

    Triage and prioritize Linear backlog issues using the linear CLI.

    144 GitHub stars~699 tokensUpdated 24 days ago
    Product & Project ManagementAuto-check passed
  • Tapd Iteration Plan

    TencentBlueKing/bk-bcs

    TAPD 迭代规划技能。基于"approved"状态的需求池,结合需求依赖关系、size 规模、 优先级进行全局编排,将合适规模的需求规划进入指定迭代。支持新建迭代和已有迭代 重入两种模式,自动控制迭代总规模上限(默认 1000),通过有向无环图(DAG)分析 保证依赖需求优先入迭代。

    840 GitHub stars~1.6k tokensUpdated today
    Product & Project ManagementAuto-check passed
  • Track Backlog

    cdiggins/plato

    View and manage the tracker backlog — show in-progress work, current priorities, sprint contents; triage untriaged items; promote ideas to ready; plan a sprint (big rocks + little rocks…

    106 GitHub stars~1k tokensUpdated 12 days ago
    Product & Project ManagementAuto-check passed
  • Bmad Agent Sm

    paulpreibisch/AgentVibes

    Scrum master for sprint planning and story preparation. An agent skill from paulpreibisch/AgentVibes.

    155 GitHub starsUsed in 1 repo~769 tokens
    Product & Project ManagementAuto-check passed

More from spokvulcan/poker-planning

  • Convex Create Component

    spokvulcan/poker-planning

    Builds reusable Convex components with isolated tables and app-facing APIs.

    114 GitHub starsUsed in 8 repos~2.6k tokens
    Auto-check passed
  • Convex Migration Helper

    spokvulcan/poker-planning

    Plans Convex schema and data migrations with widen-migrate-narrow and @convex-dev/migrations.

    114 GitHub starsUsed in 8 repos~1.4k tokens
    Auto-check passed
  • Convex Setup Auth

    spokvulcan/poker-planning

    Sets up Convex auth, identity mapping, and access control. An agent skill from spokvulcan/poker-planning.

    114 GitHub starsUsed in 8 repos~1.8k tokens
    Auto-check passed
  • Convex Quickstart

    spokvulcan/poker-planning

    Creates or adds Convex to an app. An agent skill from spokvulcan/poker-planning.

    114 GitHub starsUsed in 6 repos~3.5k tokens
    Auto-check: notes
  • Convex

    spokvulcan/poker-planning

    Routes general Convex requests to the right project skill. An agent skill from spokvulcan/poker-planning.

    114 GitHub starsUsed in 6 repos~399 tokens
    Auto-check passed

Questions about Convex Performance Audit

What does Convex Performance Audit do?

Audits Convex performance for reads, subscriptions, write contention, and function limits. Convex Performance Audit is an agent skill from spokvulcan/poker-planning. Audits Convex performance for reads, subscriptions, write contention, and function limits.

When should I use Convex Performance Audit?

Convex Performance Audit fits situations like: insights findings; read amplification.

How do I install Convex Performance Audit in Claude Code?

Run `npx skills add spokvulcan/poker-planning --skill convex-performance-audit -a claude-code`. Or copy the skill folder (.agents/skills/convex-performance-audit in spokvulcan/poker-planning) into .claude/skills/convex-performance-audit in your project. Claude Code loads it when a task matches its description.

How do I install Convex Performance Audit in Codex?

Run `npx skills add spokvulcan/poker-planning --skill convex-performance-audit -a codex`. Or copy the skill folder (.agents/skills/convex-performance-audit in spokvulcan/poker-planning) into .agents/skills/convex-performance-audit in your project. Codex loads it when a task matches its description.

Can I use Convex Performance Audit in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add spokvulcan/poker-planning --skill convex-performance-audit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/convex-performance-audit, .gemini/skills/convex-performance-audit, .github/skills/convex-performance-audit and .opencode/skills/convex-performance-audit in your project.

What does Convex Performance Audit need to run?

Going by SKILL.md and its folder, Convex Performance Audit needs the command-line tools its instructions call (npx). Our summary lists: Node.js.

Does Convex Performance Audit access the network?

SKILL.md names 1 domain. As links in the text: docs.convex.dev. This is read from the text; nothing was executed.

Is Convex Performance Audit safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Convex Performance Audit use?

Convex Performance Audit is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Convex Performance Audit use?

About 1.9k tokens (SKILL.md is roughly 7.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 8.3k tokens, read only when the agent opens those files.

What are the alternatives to Convex Performance Audit?

Skills that share tags, products or a category with Convex Performance Audit: Agile Product Owner (alirezarezvani/claude-skills, 28k stars), Walking Skeleton Roadmap Scoping (prime-radiant-inc/iterative-development, 181 stars), Triage (joa23/linear-cli, 144 stars) and Tapd Iteration Plan (TencentBlueKing/bk-bcs, 840 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Convex Performance Audit?

spokvulcan (a GitHub user) maintains it in spokvulcan/poker-planning, which has 114 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on October 4, 2026.

Source: spokvulcan/poker-planning on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.