Ankit1598
- 27 skills
- 0 followers
- 5 hours ago last updated
- ▌ Mutation Audit · ankit1598 bundleRequires append-only audit events for data writes, auth/session/RBAC changes, and operator actions — with sanitized payloads and no secrets. Use when adding mutations, Server Actions, write APIs, auth changes, role changes, or operator/admin actions; independent of multi-tenancy.
- ▌ React Native UI · ankit1598Complete guide for building Expo/React Native apps — routing, navigation, library preferences, responsiveness, and behavior rules. Use when working on any Expo or React Native project, setting up navigation, choosing libraries, or structuring routes. Filename convention override: camelCase (not kebab-case).
- ▌ Secrets Hygiene · ankit1598 bundleEnforces no hardcoded secrets and no committed env files except .env.example; when Infisical config exists, Infisical is the only source of truth for real secrets. Use when touching env files, credentials, Infisical, secrets, config keys, auth/config work, or before suggesting commits that include env-like files.
- ▌ Shadcn Standard · ankit1598House rules on top of the upstream shadcn skill. nativeButton={false} only when the rendered host is not a button. Use when composing shadcn Button, PopoverTrigger, DialogTrigger, asChild, render, nativeButton, Base vs Radix, components.json, or wrapping registry UI. Load with shadcn — this skill wins on conflict. Never patch gitignored skills/shadcn/.
- ▌ Artifacts Upkeep · ankit1598Keeps project .artifacts/ in sync after implementation — updates PRDs, plans, status, references, and diagrams that drifted from the code. Use when finishing a feature slice, closing a plan phase, code diverges from a PRD/plan, or the user says "update the artifacts", "sync artifacts", or "keep docs current".
- ▌ Decision Records · ankit1598 bundleWrites ADR-lite decision records under .artifacts/decisions/ as DECISION_YYYYMMDD_TITLE.md (optional entity subfolder). Use when recording an architecture, product, data-model, security, dependency, or workflow decision, or when the user says "decision record", "ADR", "record the decision", or "log this decision".
- ▌ UI Design Native · ankit1598React Native / iOS / Android design and UX rules — touch targets, safe areas, platform conventions, accessibility, and motion. Use when designing or reviewing React Native UI, handling touch interactions, implementing platform-specific patterns, or ensuring accessibility on mobile. For inline styles and animation library priority → see react-native-styling skill.
- ▌ Project Structure · ankit1598 bundleMandatory Next.js product layout: Pattern A actions own I/O, services are connect/send only, lib has no I/O, Zustand store is two files. Use before any new or moved .ts/.tsx under app/actions/hooks/store/providers/services/managers/lib/types/schemas; when asking where a file goes; when adding a page, action, hook, API route, or provider. Required via app-code-standards — do not write from memory.
- ▌ App Code Standards · ankit1598Mandatory pre-write gate for product TypeScript/React/Next.js code. Forces a same-turn Read of project-structure (SKILL + REFERENCE) and code-style before any .ts/.tsx Write or StrReplace, plus forms-standard when form-shaped and shadcn-standard when composing registry UI. Use when writing, editing, scaffolding, refactoring, remapping, or reviewing app/actions/components/hooks/store/providers/services/managers/lib/types/schemas code; when adding a page, component, hook, action, API route, form, Button, or nativeButton; never skip because the user did not name these skills.
- ▌ Naming Conventions · ankit1598Enforces camelCase for product files and folders, with exceptions for Next.js App Router names, kebab URL segments, shadcn shims, Expo Router, agent skill folders, and .artifacts/. Use when creating new files or folders, deciding where to put something, or naming any new component, hook, service, or utility.
- ▌ React Native Styling · ankit1598React Native styling rules — inline styles, safe areas, shadows, visual effects (gradients, filters, blend modes), spacing, and animation library priority order (reanimated → moti → built-in). Use when styling React Native components, handling safe areas, adding shadows or gradients, applying filters, or implementing animations in any Expo or React Native project.
- ▌ Verify File Location · ankit1598Before editing or referencing any file, discover its current path with Glob or Grep, then Read that path immediately before StrReplace or Write. Never use remembered paths or stale buffer from a prior turn; user may move files or edit on disk between prompts. Use at the start of every task that touches an existing file, including skills under ~/.agents/skills/.
- ▌ Code Review Artifacts · ankit1598Writes terse, actionable code review findings to a markdown file under the project `.artifacts/` tree. Use when the user asks for a code review, diff review, review written to artifacts, or review saved as markdown; follow dev-artifacts for path and ALL_CAPS_SNAKE_CASE naming.
- ▌ Grill Me · ankit1598Relentlessly interviews about every aspect of a plan or design, resolving one decision-tree branch at a time until reaching shared understanding. Provides a recommended answer for each question. Use when stress-testing a plan, validating a design, or when the user says "grill me", "challenge my plan", "stress-test this", or "interview me about this".
- ▌ Tailwind · ankit1598Tailwind CSS v4 CSS-first configuration, OKLCH color tokens, CVA component variants, and dark mode setup. Use when configuring Tailwind v4, setting up design tokens, creating multi-variant components with CVA, implementing dark mode, or migrating from Tailwind v3.
- ▌ Code Style · ankit1598Mandatory TS/React product style: arrow functions, default export (unless multi-export), raw Tailwind outside components/ui, complexity ≤ 15, Server Action async+await, no default useMemo. Use before writing or editing any component, hook, page, action, or utility; when adding className; when a function grows branches. Required via app-code-standards — do not ship function UserCard or bg-primary outside shadcn.
- ▌ Excalidraw · ankit1598 bundleGenerates Excalidraw diagram files (.excalidraw) from natural language descriptions. Outputs to .artifacts/ with ALL_CAPS_SNAKE_CASE filenames. Use when asked to create a diagram, flowchart, architecture diagram, mind map, sequence diagram, ER diagram, or any visual representation of a system, flow, or relationship.
- ▌ Git Commit · ankit1598 bundleSuggests conventional commit messages using project types from release-it.json. Distinguishes feat (wholly new capability) from add (extension to existing). Outputs separate copyable git add, git commit, and message blocks with shell-escaped paths. AI suggests only — never commits or pushes. Use when an implementation is complete, when asked for a commit message, or when deciding how to stage and group changes.
- ▌ Agent Terse · ankit1598Default terse “caveman-style” assistant prose for explanations and reasoning; modes lite, full, ultra, and optional wenyan tiers; persists until stop caveman or normal mode. Use for every technical reply unless the user turns it off or Auto-Clarity applies. Commit message suggestions still follow the git-commit skill.
- ▌ Create Skill · ankit1598Creates new agent skills following project conventions — kebab-case folder names, 100-line SKILL.md limit, third-person descriptions with trigger keywords, and .artifacts/ awareness for output-producing skills. Use when creating a new skill, writing a skill, or asked "add a skill for X", "make a skill that...", "new skill for X".
- ▌ Prd Workflow · ankit1598 bundleTwo-phase local PRD workflow — discovery interview to PRD, then PRD to phased implementation plan. All outputs go to .artifacts/. Use when planning a new feature, writing a PRD, creating an implementation plan, or when the user says "write a PRD", "plan this feature", "document requirements", or "create an implementation plan".
- ▌ Scoped Authz · ankit1598Enforces fail-closed capability checks on the server plus matching UI gates, and when multi-tenant, tenant scope from auth context only via the data layer. Use when adding mutations, authorize/Can gates, roles, capabilities, tenant scoping, repositories, or control-plane vs tenant-plane data access.
- ▌ Write Script · ankit1598 bundleEnforces one-shot Node ESM Mongo ops under `.scripts/<scriptName>/` — dry-run default, `--apply` writes, colocated `output/`, always-on action log, undo-ready rows. Use when writing or running a `.scripts` job, backfill, heal, migrate, CSV reconcile, import, or data-fix script; when the user says "write a script" or mentions `--apply`, `--undo`, `--verbose`, dry-run. Not for app MongoClient pools, schema design, or query-index work.
- ▌ API Contracts · ankit1598 bundleEnforces HTTP API wire contracts — path versioning (/api/vN), response envelopes, cursor pagination, optimistic concurrency, idempotency, and dual REST/Server Action paths. Use when adding or changing Route Handlers, Server Actions, API contracts, list endpoints, versioning, envelopes, or Idempotency-Key / ETag behavior.
- ▌ Dev Artifacts · ankit1598 bundleGoverns the .artifacts/ folder — naming, placement, Diátaxis document type classification, and special types (ubiquitous language, excalidraw diagrams). Use when creating any development artifact: PRDs, plans, schemas, diagrams, checklists, guides, analysis docs, or glossaries. See REFERENCE.md for the full folder structure and all category definitions.
- ▌ UI Design Web · ankit1598High-end web UI design standards, redesign audit checklist, content rules, and web UX priorities for Next.js/React projects. Use when building new web pages, reviewing UI quality, redesigning existing pages, choosing fonts/colors/layout, or when UI looks generic or unprofessional. For React Native design rules → see ui-design-native skill.
- ▌ Forms Standard · ankit1598Mandatory form stack: react-hook-form + zod + zodResolver. Bans useState for fields, loading, errors, and validation. Use when adding or editing a form, login/signup/settings, <form, useForm, register, Controller, useFieldArray, submit handlers, or any useState that holds input/validation/submit state. Required via app-code-standards for form-shaped work — do not write a useState form first.