Suggest

作者 get-convex6ca54f6e2e75无许可证6 个星标收录于 2026年10月8日更新于 2026年10月8日仓库今天更新

Proactively suggest the right Convex component when the user hand-rolls what already exists: setInterval polling → crons, counter increments → sharded-counter, .collect() counts → aggregate, email → resend, DB-counter rate limiting → rate-limiter, uploads → storage, search, presence, multi-step actions → workflow, vector DB → rag, collaborative editing → prosemirror-sync. TRIGGER on noticing the pattern in a Convex app, AFTER completing the user's request. NEVER for non-Convex code.

AI 生成的概览

当 Convex 应用重复实现已有组件功能时,主动建议合适的 Convex 组件。

功能
该技能会观察 Convex 应用的代码和用户请求,识别与现有 Convex 组件重复的模式,例如轮询定时器、计数器自增或发送邮件。在完成当前任务后,它会给出单条建议,指明一个组件、引用触发该建议的代码,并说明该组件为何更合适。它会提供安装提示,且仅在用户明确同意后才继续。
适用场景
适用于在 Convex 代码库中工作时,发现代码或意图重新实现了 Convex 组件已提供的功能。它应在用户当前请求完成之后运行,而不是打断该请求。不应用于非 Convex 代码或通用编程问题。
运行要求
无脚本,仅为说明性指令。它假定处于 Convex 项目环境,并引用位于 generators/suggest-detector.mjs 的检测规则文件,该文件未包含在技能文件夹中。

Proactively suggest the right Convex component

When you see code or intent that duplicates what a Convex component already does, surface a targeted suggestion: ONE component, WHY (anchored in the user's own code or ask), and a concrete install hint. Never install without explicit consent. Never suggest more than one component at a time unless the user asks.

Steps

  1. Observe the codeSnippets and userAsk passively — never block the current task to suggest.
  2. Match against the detector rules (see generators/suggest-detector.mjs): email/SMTP → resend; push notifications → expo-push; setInterval/cron → @convex-dev/crons; shared counter increments → @convex-dev/sharded-counter; .collect().length scans → @convex-dev/aggregate; multi-step/long-running actions → @convex-dev/workflow; bounded concurrency → @convex-dev/workpool; rate-limit counters in DB → @convex-dev/rate-limiter; fs.write/S3 uploads → Convex Storage; Elasticsearch/Algolia → built-in full-text search; presence/typing → @convex-dev/presence; Pinecone/external vector DB → @convex-dev/rag; collaborative editing → @convex-dev/prosemirror-sync.
  3. After finishing the current task, offer ONE suggestion: name the component, quote the specific code or phrase that triggered it, explain why the component fits better.
  4. If the user says yes: run /add <component> or follow the installHint from the detector.
  5. If the user says no or ignores it: drop it. Do not repeat the same suggestion.

Rules

  • Passive — never interrupt the current task; surface the suggestion AFTER completing what the user asked.
  • One at a time — pick the highest-priority match; do not dump a list of five components.
  • Cite WHY from the user's own code or ask — 'I noticed you wrote post.likes + 1 in a mutation that many users call concurrently; that causes OCC conflicts at scale.'
  • Never install without explicit consent — suggest, explain, wait for a yes.
  • Do not suggest a component the user has already installed.
  • Do not fire on generic coding questions unrelated to Convex (sorting arrays, writing CSS, etc.).

来源与署名

来源:get-convex/convex-backend-skill位于skills/suggest提交6ca54f6

许可证: 无许可证

内容归原作者所有。SourceWeft 从公开仓库中收录这些内容。

举报或申请下架