本文へ移動
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.

インストール方法を見る

含まれるファイル(1)

  • SKILL.md4.3 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

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>

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

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

日本語の概要は準備中です。原文の説明を表示しています。

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

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月10日 更新

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月10日 更新

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月10日 更新

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月10日 更新

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

日本語の概要は準備中です。原文の説明を表示しています。

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

Melvynx のスキルをすべて見る

このスキルの問題を報告する