● 社群
waynesutton
⚡ 即開即用
convexskills
作者 waynesutton · waynesutton/convexskills
12 個 Convex 專屬技能,涵蓋函式、資料結構、即時更新、排程、HTTP 動作、檔案儲存、代理程式、安全審查與資料遷移。
專為在 Convex 上開發而設計的技能集合。每個 SKILL.md(含有效的 Agent Skill 前置資料、範例及最佳實踐)教導 Claude 慣用的 Convex 模式:查詢 vs 變更 vs 動作、響應式即時更新、排程任務、HTTP Webhook、結構驗證器、資料遷移與安全審查。讓 Claude 不再自行臆造 Convex API。
為什麼要用
核心特性
- 12 個 Convex 專屬技能,附真實程式碼範例
- 涵蓋函式(query/mutation/action/HTTP)、資料結構、即時更新、排程、檔案儲存、代理程式
- 兩個安全技能:convex-security-check 與 convex-security-audit
- 資料結構演進的遷移模式
- 用於建立可重用元件的 convex-component-authoring
即時演示
實際使用效果
convexskills-skill.replay
▶ 就緒
使用場景
實戰用法: convexskills
何時使用: 從零開始,希望從第一個檔案起就使用正確的 Convex 模式。
前置條件
- Convex CLI — npm create convex
步驟
-
設計資料結構
使用 convex-schema-validator 技能。為使用者、專案和檔案設計資料表,並建立適當的索引。✓ 已複製
→ 結構使用 v.id(),已宣告索引,關聯關係正確
-
連接查詢與變更函式
使用 convex-functions 技能。為專案實作 CRUD 功能。✓ 已複製
→ 讀取用查詢,寫入用變更,無誤用動作的情況
-
加入即時更新與檔案上傳
使用 convex-realtime 和 convex-file-storage,讓專案支援即時更新並附帶檔案附件。✓ 已複製
→ React 透過 useQuery 訂閱,檔案透過 storage.generateUploadUrl 儲存
結果: 一個結構正確、可持續開發的 Convex 應用程式。
注意事項
- 在可用變更函式的地方使用動作 — 技能強制規定:資料庫寫入用變更,外部 I/O 用動作
何時使用: 需要排程任務但不想另外啟動 Worker 服務時。
步驟
-
使用排程技能
使用 convex-cron-jobs。新增一個每日任務,刪除 sessions 資料表中超過 30 天的資料列。✓ 已複製
→ crons.ts 項目 + 用於清理的內部變更函式
-
測試
→ 僅限開發環境的 HTTP 動作或 CLI 指令
結果: 一個在 Convex 受管排程器上執行的排程任務。
注意事項
- 排程任務執行的是查詢而非內部變更函式 — 技能強制規定刪除操作使用內部變更函式
何時使用: 應用程式已準備就緒,但尚未對驗證機制進行壓力測試時。
步驟
-
執行審查
對此專案執行 convex-security-audit。檢查每個公開變更函式是否具備適當的驗證。✓ 已複製
→ 每個函式的驗證狀態及對應嚴重程度
-
修復問題
加入身份驗證檢查,並讓未授權的讀取操作回傳 null。✓ 已複製
→ 函式已更新並加入 ctx.auth 檢查
結果: 在正式上線前完成驗證機制的強化。
注意事項
- 依賴「public 等於未驗證使用者可存取」的思維模型 — Convex 公開函式可從網際網路直接存取;技能要求必須加入驗證檢查
組合
與其他 MCP 搭配,撬動十倍槓桿
技能負責設計與實作,GitHub MCP 開啟 Pull Request
使用 convexskills 建立功能,然後提交變更並開啟一個 PR。✓ 已複製
建立 Convex 後端,再透過 Playwright 進行端對端 UI 測試
實作 Convex 後端,然後撰寫一個 playwright-skill 測試,對 UI 進行操作並驗證即時更新是否正常運作。✓ 已複製
成本與限制
運行它的成本
- API 配額
- 技能本身不消耗配額;Convex 有自己的免費與付費方案
- 每次呼叫 Token 數
- 每次載入技能約消耗 2-6k tokens
- 費用
- 免費——技能在本地執行。Convex 提供慷慨的免費方案。
- 提示
- 直接指定特定技能名稱(例如 convex-cron-jobs)以避免載入整個技能集。
安全
權限、密鑰、影響範圍
憑證儲存: 技能中不包含任何憑證。Convex 部署金鑰請存放於您的 .env 檔案中。
資料出站: 技能本身不會傳輸任何資料
- Convex 公開函式可從網際網路直接存取。正式上線前請務必執行 convex-security-audit。
故障排查
常見錯誤與修復
Claude writes an action when a mutation suffices
技能強制執行的原則:僅操作資料庫 → 使用變更函式;涉及外部 I/O → 使用動作。
Schema change breaks existing data
使用 convex-migrations 技能——它會規劃安全的資料過渡流程,並包含回填步驟。
useQuery doesn't update in realtime
檢查響應性:查詢必須讀取實際發生變更的資料,而非過時的索引。
替代方案
convexskills 對比其他方案
| 替代方案 | 何時用它替代 | 權衡 |
| Manual Convex docs + examples | 您已是有經驗的 Convex 開發者 | 沒有技能輔助,上手速度較慢 |
| Framework-specific fullstack skills | 您使用的不是 Convex | 不同的技術棧 |