1. Habit
  2. Skills
  3. Convex Realtime skill
waynesutton · 3K installs

Convex Realtime skill
Runs by itself, PR touches convex code.

Live queries stay small and indexed.

Install the Convex Realtime skill and make it a habit: follow https://gethabit.dev/skills/waynesutton/convex-realtime.md

  1. 1Copy
  2. 2Paste into Claude Code, Codex or Cursor
  3. 3It runs by itself

3K installs405 starsApache-2.0 licenceSource on GitHub ↗

Convex Realtime

by waynesutton · 3K installs

The skill

The convex realtime skill helps build reactive UIs on Convex subscriptions with useQuery patterns, optimistic updates, live pagination, presence and less subscription churn.

Only when you ask.

The habit

Live queries stay small and indexed.

↻ Runs by itselfPR touches convex code

How the habit works.
You don't have to.

Three questionsWhen does it start? How does it check its work? What does it remember?

One run, step by step.
Then it stops.

Stop ruleOne pull request per run, at most 20 query functions checked.

  1. 01

    Read past findings

    Open the log to see which queries were flagged before.

  2. 02

    List changed queries

    Collect the changed query functions and the components that call useQuery or usePaginatedQuery.

  3. 03

    Check read sets

    Confirm each query reads through withIndex and bounds results with .take(n) or .paginate().

  4. 04

    Check determinism

    Flag any Date.now(), Math.random() or fetch inside a query.

  5. 05

    Check client hooks

    Confirm undefined is handled first and conditional queries pass skip.

  6. 06

    Check optimistic updates

    Make sure each optimistic update touches every query the mutation changes.

  7. 07

    Log the findings

    Write each issue with its file and the fix the checklist suggests.

What it may do.
Nothing more.

Safe by defaultIt writes only in its own folder and asks you before anything goes out.

Is it for you?
Use it when it fits.

Quick checkRead both lists. If the left one sounds like you, the Convex Realtime skill helps.

Use it when

  • ✓ data does not update live
  • ✓ a page rerenders too often
  • ✓ a paginated list drops rows

Skip it when

  • – the backend is not Convex
  • – you only need server-side code

Questions

Convex Realtime skill, answered.

Why does Date.now() matter in a query?

Queries must be deterministic for caching and live updates, so time is passed as a rounded argument.

Does it build presence for me?

No. It points to the @convex-dev/presence component and checks that heartbeats live in their own table.

Does it change code?

No. It reports issues and the suggested fix for each one.

How do I install the Convex Realtime skill?

Copy the prompt at the top into your agent. It installs the skill from waynesutton/builder-skills and sets up the habit. Or run npx skills add waynesutton/builder-skills --skill convex-realtime.

Is the Convex Realtime skill free?

Yes. It is published under Apache-2.0. Habit is free too.

Convex Realtime. Now as a habit.

Install the Convex Realtime skill and make it a habit: follow https://gethabit.dev/skills/waynesutton/convex-realtime.md

  • Free
  • No account
  • Undo in one line

All waynesutton skills →More code skills →

Works in

  • Claude Code
  • Codex
  • Cursor
  • ChatGPT
  • Claude app

Made by waynesutton, published under Apache-2.0. Habit links to the original and never changes it. Is this your skill?

Copying didn't work here. Select the line and copy it by hand.