convex-best-practices SKILL.md skillA
convex-best-practices from bjornmelin/dev-skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.
mdr add bjornmelin/dev-skills/convex-best-practices@git:20260425.a00fb59Pins git:20260425.a00fb59 in mdr.lock. Pin the fingerprint instead.
- Audit grade
- A, 17 of 17 checks passed
- Kind
- SKILL.md skill
- Repository
- bjornmelin/dev-skills
- Path
skills/convex-best-practices/SKILL.md- Versions recorded
- 1
- Latest version
- git:20260425.a00fb59, committed Apr 25, 2026
- Size
- 9,679 bytes
- Repository stars
- 8
- License
- none declared
Guidelines for building production-ready Convex apps covering function organization, query patterns, validation, TypeScript usage, error handling, and the Zen of Convex design philosophy.
Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.
What the file says
# Convex Best Practices
Build production-ready Convex applications by following established patterns for function organization, query optimization, validation, TypeScript usage, and error handling.
## Code Quality
All patterns in this skill comply with `@convex-dev/eslint-plugin`. Install it for build-time validation:
```bash
npm i @convex-dev/eslint-plugin --save-dev
```
```js
// eslint.config.js
import { defineConfig } from "eslint/config";
import convexPlugin from "@convex-dev/eslint-plugin";
export default defineConfig([
...convexPlugin.configs.recommended,
]);
```
The plugin enforces four rules:
| Rule | What it enforces |
| ----------------------------------- | --------------------------------- |
| `no-old-registered-function-syntax` | Object syntax with `handler` |
| `require-argument-validators` | `args: {}` on all functions |
| `explicit-table-ids` | Table name in db operations |
| `import-wrong-runtime` | No Node imports in Convex runtime |
Docs: https://docs.convex.dev/eslint
## Documentation Sources
…Read the whole file at its exact version.
How to install
mdr add bjornmelin/dev-skills/convex-best-practices@sha256:20e2298b8ebeca51The line at the top of this page pins the label git:20260425.a00fb59, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.
[](https://markdownregistry.com/a/art_kpz6d544wshr3a6j)
4 badge image fetches in 30 days. What the badge shows.
Versions
The registry has recorded 1 version of this file, committed on Apr 25, 2026.
Audit of the latest version
- pass: Frontmatter block present
- pass: Frontmatter declares a name
- pass: Frontmatter declares a description
- pass: Size between 200 bytes and 200 KB (9679 bytes)
- pass: No zero-width or bidi control characters
- pass: No instruction hidden inside an HTML comment
- pass: No link to an exfiltration or paste host
- pass: No credential-shaped string
- pass: No instruction to send local credentials anywhere
- pass: No text hidden with inline styles
- pass: No prompt-injection phrasing
- pass: No curl or wget piped into a shell
- pass: No recursive delete of root, home or parent
- pass: No instruction to read or print local credentials
- pass: No base64 blob over 200 characters
- pass: No link to a raw IP address
- pass: No script tag
Source
bjornmelin/dev-skills · 8 stars · license none declared · pushed 2026-10-27 · branch main
API
GET https://markdownregistry.com/api/v1/artifacts/art_kpz6d544wshr3a6j GET https://markdownregistry.com/api/v1/resolve?ref=bjornmelin/dev-skills/convex-best-practices GET https://markdownregistry.com/api/v1/blob/20e2298b8ebeca51e189394ec924756dfaef5fa70170ff7fd2fbdb5177718fcd
Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.
Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.
More from bjornmelin/dev-skills
Every file in bjornmelin/dev-skills