From first-plan
Detects Node/TypeScript stacks (Next.js, NestJS, Vite SPA, Express, Astro, Remix, Nuxt, monorepos) from package.json and extracts patterns for modules, validation (Zod/Yup), testing, async, errors, logging.
How this skill is triggered — by the user, by Claude, or both
Slash command
/fp:lens-typescriptThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Pelo `package.json` + arquivos auxiliares:
Pelo package.json + arquivos auxiliares:
| Sinal | Variante |
|---|---|
next.config.{js,ts,mjs} | Next.js |
nest-cli.json ou @nestjs/* em deps | NestJS |
vite.config.{js,ts} sem framework | SPA Vite |
vite.config.{js,ts} + @sveltejs/kit | SvelteKit |
astro.config.{js,ts,mjs} | Astro |
remix.config.{js,ts} | Remix |
@nuxt/kit ou nuxt.config.{js,ts} | Nuxt |
expo em deps | Expo (mobile) |
react-native em deps | React Native bare |
electron em deps | Electron |
bin field no package.json sem framework | CLI Node |
express ou fastify em deps | Backend tradicional |
pnpm-workspace.yaml | Monorepo pnpm |
turbo.json | Turborepo |
nx.json | Nx |
"type": "module" no package.json -> ESMtsconfig.json -> verificar strict, noImplicitAny, paths, target, modulezod em deps -> Zodyup em deps -> Yupio-ts -> io-tsclass-validator + class-transformer -> nestjs-stylevalibot, arktype -> opções modernasjoi -> Joi (legacy)Verificar onde validação acontece (boundary handlers? service layer?)
.then/.catch ou async/await?RxJS em deps -> reactive style (comum em Angular/NestJS)Effect library?Result<T, E> library (neverthrow, effect)vitest, jest, mocha, ava, tap?vitest.config.ts, jest.config.js)playwright, cypress, webdriverio)?vi.mock, jest.mock, sinon, nock (HTTP)?zustand, redux, jotai, recoil, pinia, mobx, Context apenas)@tanstack/react-query, swr, apollo, urql, server components)react-hook-form, formik, superforms)next-intl, i18next)@Injectable, @Inject)pino, winston, bunyan?console.log direto (smell).first-plan/Igual lens-go (stacks, architecture, boundaries, errors, testing, di, logging, reuse).
Adicional para frontend:
03-reuse/components.md - componentes UI (priorizar Server Components, hooks compartilhados, layout components)03-reuse/hooks.md - custom hooks reusáveisAumentar:
tsconfig.strict: true + projeto sem any -> alta confiança no padrão "evitar any"Reduzir:
any em projeto strict// @ts-ignore ou // @ts-expect-error sem comentário explicandoconsole.log em produçãoprocess.env.X sem schema (smell - deveria ter validação central)useEffect com lista de deps incorreta (React)npx claudepluginhub vynazevedo/first-plan --plugin fpProfiles codebases by detecting tech stack, frameworks, infrastructure, architecture patterns, quality signals, and scale metrics for targeted recommendations.
TypeScript deep-dive skill covering type-level programming, performance optimization, monorepo patterns, and migration strategies. Also redirects to specialized subagents for bundler/module/type issues.
Analyzes existing codebases to detect project types, frameworks, structures, and collision risks. Supports context, brownfield, and setup modes for feature planning.