跳到正文
cccskills
免费在 GitHub 公开

ns-optimizer

Optimize NowStack Mobile across Convex, Expo, and TanStack Start. Use for performance, state, subscriptions, rendering, routing, forms, mobile UI, bundle, or data-fetching improvements.

中文简介正在准备中。当前显示原文说明。

集成工具Stripe
查看安装方法

包含的文件(1)

  • SKILL.md4.3 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Optimizer - NowStack Mobile

<objective> Improve performance and architecture in this repo without importing assumptions from the web-only NowStack SaaS app. NowStack Mobile has three surfaces:
  • convex/ for the backend and shared auth/payment/storage logic.
  • web-app/ for TanStack Start landing, /app, and /admin.
  • mobile-app/ for Expo Router, React Native, NativeWind, store payments, and mobile UX. </objective>

<first_steps>

  1. Identify the affected surface: Convex, web, mobile, or cross-surface.
  2. Read the matching rule file before editing:
    • .agents/rules/convex.md
    • .agents/rules/web-app.md
    • .agents/rules/mobile-app.md
    • .agents/rules/auth-payments-storage.md
    • .agents/rules/development-commands.md
  3. Before touching convex/, read convex/_generated/ai/guidelines.md.
  4. Gather the cheapest real signal available: build/typecheck output, route behavior, screen flow, query callsites, logs, or measured slow path. </first_steps>

<decision_tree>

ProblemPreferred path
Convex reads are expensive, .filter() scans, missing indexes, high docs readUse convex-cost-optimizer or convex-performance-audit first
Convex schema/data shape needs a rolloutUse convex-migration-helper
Web route state, admin rendering, landing bundle, TanStack Router behaviorWork in web-app/ and verify with web typecheck/build
Mobile render jank, onboarding/paywall flow, NativeWind layout, auth store stateWork in mobile-app/ and verify with TypeScript/lint plus simulator when needed
Shared auth, payments, R2, account behaviorTreat Convex + web + mobile as one contract and verify every touched surface
</decision_tree>
<patterns> ## Convex
  • Use indexes for bounded reads; avoid broad .filter() on hot paths.
  • Keep authorization in Convex helpers and return DTOs suitable for clients.
  • Avoid duplicating backend state into local frontend stores when Convex subscriptions can be the source of truth.
  • Prefer targeted pagination and summary records only when there is measured or clearly unbounded read cost.

Web App

  • Keep route files under web-app/app/routes/.
  • Use @/*, @convex/*, and @site-config aliases already configured in web-app.
  • Keep /admin dense and operational; do not optimize by replacing useful tables with marketing-style cards.
  • Use existing Base UI/shadcn primitives in web-app/app/components/ui/ before adding new primitives.

Mobile App

  • Keep screen state local unless it must survive navigation or be shared across screens.
  • Use the existing mobile auth/store helpers before adding a new state library.
  • Prefer stable dimensions for buttons, footers, headers, and onboarding/paywall surfaces to avoid layout shifts.
  • Avoid network-dependent screenshot/store flows; use deterministic demo paths when preparing release assets.

Cross-Surface

  • site-config.ts is the shared source for product, URLs, bundle id, payment ids, and auth origins.
  • iOS production payments use Apple IAP. Do not replace that with Stripe checkout.
  • Android and web may use Stripe, with server-side payment logic in Convex.
  • R2 credentials and backend runtime secrets belong in Convex env, not committed app env files. </patterns>
<verification> Pick the narrowest set that covers the touched surface:
npx convex dev --once
cd web-app && npm run typecheck
cd web-app && npm run build
cd mobile-app && npx tsc --noEmit
cd mobile-app && npm run lint

For visible web behavior, run cd web-app && npm run dev and verify the relevant route. For mobile behavior, use Expo/simulator verification when the change affects navigation, native APIs, payments, screenshots, or layout. </verification>

<anti_patterns>

  • Do not introduce Prisma, PostgreSQL, Supabase, Firebase, Redis, or DB mirroring.
  • Do not assume org-scoped SaaS routes such as /orgs/$orgSlug; this repo's current product model is mobile-first.
  • Do not copy web-only Zustand, TanStack Form, or TanStack Query patterns unless the dependency and local convention already exist.
  • Do not optimize from taste alone. Tie larger refactors to a real signal or an obviously unbounded path. </anti_patterns>

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Complete guide for building beautiful apps with Expo Router. Covers fundamentals, styling, components, navigation, animations, patterns, and native tabs.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

convex

免费

Routes general Convex requests to the right project skill. Use when the user asks which Convex skill to use or gives an underspecified Convex app task.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

Use when optimizing Convex database read bandwidth, documents-read cost, query indexes, full-table scans, function-level usage dashboard findings, or code that uses .filter(), unbounded .collect(), N+1 reads, or expensive reactive Convex queries.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

Build reusable Convex components with isolated tables and app-facing wrappers. Use for defineComponent, app.use, ComponentApi, or shared backend modules.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

Plan safe Convex schema and data migrations. Use for widen-migrate-narrow rollouts, backfills, breaking field changes, table splits, or failed schema deploys.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

Audit Convex performance for hot reads, write contention, subscriptions, function limits, OCC conflicts, latency, read amplification, and expensive reactive queries.

中文简介正在准备中。当前显示原文说明。

Melvynx/saveit.now322026年10月19日 更新

查看 Melvynx 的全部技能

报告此技能的问题