skills/error-to-vi/SKILL.md
Translate common Next.js, TypeScript, Supabase, and npm build errors into plain Vietnamese with actionable fix hints. Used by vibe-fix and vibe-deploy so non-dev users never see raw English error messages.
npx skillsauth add Hikkywannafly/vibe-kit error-to-viInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Take raw English error output and return a plain Vietnamese explanation with a simple fix instruction. Non-dev users see "Bi loi X, lam Y de sua" — not a stack trace.
| English error | Vietnamese | Fix hint |
|--------------|-----------|----------|
| Module not found: Can't resolve '...' | "Khong tim thay module [...]. Co the chua cai dat." | npm install <ten-package> |
| Type error: Type 'X' is not assignable to type 'Y' | "Loi kieu du lieu: [...] khong phu hop." | "Kiem tra kieu du lieu tai dong loi, sua cho dung kieu." |
| Error: NEXT_PUBLIC_ env var is missing | "Thieu bien moi truong [...] trong .env.local" | "Mo .env.local va them bien nay." |
| SyntaxError: Unexpected token | "Loi cu phap tai dong [...]. Co the thieu dau ngoac hoac dau phay." | "Kiem tra dong loi, sua dau cu phap." |
| Build failed because of webpack errors | "Build bi loi do Webpack. Xem loi cu the ben duoi." | "Doc thong bao loi va sua theo huong dan." |
| ENOSPC: no space left on device | "May tinh het dung luong dia." | "Xoa thu muc .next/ va node_modules/, roi chay npm install lai." |
| English error | Vietnamese | Fix hint |
|--------------|-----------|----------|
| Invalid API key | "API key Supabase sai hoac het han." | "Kiem tra NEXT_PUBLIC_SUPABASE_ANON_KEY trong .env.local" |
| relation does not exist | "Bang du lieu [...] chua duoc tao." | "Chay migration SQL trong Supabase dashboard." |
| new row violates row-level security policy | "Khong co quyen ghi vao bang [...] (RLS)." | "Kiem tra policy RLS trong Supabase dashboard." |
| JWT expired | "Phien dang nhap het han." | "Dang xuat va dang nhap lai." |
| Email not confirmed | "Email chua duoc xac nhan." | "Kiem tra hop thu va bam vao link xac nhan." |
| English error | Vietnamese | Fix hint |
|--------------|-----------|----------|
| EACCES: permission denied | "Khong co quyen truy cap. Khong dung sudo voi npm." | "Chay: npm config set prefix ~/.npm-global" |
| npm ERR! peer dep missing | "Thieu thu vien phu thuoc." | "Chay: npm install --legacy-peer-deps" |
| Cannot find module 'next' | "Chua cai Next.js. Chay: npm install" | npm install |
| Error: listen EADDRINUSE :::3000 | "Cong 3000 dang duoc su dung boi chuong trinh khac." | "Chay: npx kill-port 3000 roi thu lai." |
| English error | Vietnamese | Fix hint |
|--------------|-----------|----------|
| Build failed | "Build that bai tren Vercel. Kiem tra logs." | "Vao Vercel dashboard > Deployments > xem logs chi tiet." |
| Environment variable not found | "Thieu bien moi truong tren Vercel." | "Vao Project Settings > Environment Variables va them bien." |
| Function execution timeout | "Ham chay qua lau (>10 giay)." | "Kiem tra cac API route co ket noi database cham khong." |
When an error is encountered:
npm run dev."vibe-error.log for debuggingdata-ai
Generate Vietnamese marketing copy, UI strings, CTAs, error messages, and email templates for vibe-kit projects. Tone: friendly, conversational, Southern Vietnamese style. Activated for any user-visible text generation.
development
One-shot orchestrator. Turns the prose after /vibe into a shipped product by clarifying intent, rendering a plan, gating on approval, then spawning planner+researcher+fullstack-dev+tester+reviewer agents in sequence. User-visible strings match the user's input language (Vietnamese by default for VN users). Two modes: SAFE (default — clarify + show plan + wait for approval, max 1 round-trip) and YOLO (skip clarify+approval, run full auto with smart defaults — for demos and power users). YOLO triggers: prose contains `yolo`, `nhanh nha`, `lam luon`, `khoi hoi`, `auto`, or args start with `yolo`. Trigger phrases (EN + VN): "build me a site", "make me a landing page", "create a shop", "I need an app", "vibe lam website", "tao cho toi mot", "xay dung shop online", "lam landing page", "can mot app".
tools
On-demand security audit for vibe-kit projects. Stack-aware checks for Next.js App Router + Supabase + Polar: secrets leak, RLS gaps, service-role key in client bundle, missing webhook signature verification, unprotected API routes, weak headers, dependency vulns. Outputs a Vietnamese P0/P1/P2 report with file:line + fix hints. User-visible strings match the user's input language (Vietnamese by default for VN users). Trigger phrases (EN + VN): "check security", "audit it", "security scan", "is this safe to launch", "kiem tra bao mat", "quet bao mat", "audit du an", "co an toan khong", "scan bao mat truoc khi deploy".
tools
Wire Supabase JS client into a React Native (Expo) vibe-kit project: session persistence via AsyncStorage, magic-link OAuth callback via expo-linking deep links, Realtime subscriptions on RN, and shared TypeScript types with the Next.js webapp twin (vibe-kit's typical web<->mobile pair pattern). This is the mobile counterpart of `auth-magic-link` (web). User-visible strings match the user's input language (Vietnamese by default for VN users). Trigger phrases (EN + VN): "supabase react native", "supabase mobile", "auth mobile expo", "magic link mobile", "tich hop supabase vao app", "supabase deep link".