Skill surface
Review the skills layer that supports installation, verification, and agent guidance in Purrfold projects.
Scaffold skills and framework workflow skills
Purrfold installs shared scaffold skills for every project, plus framework-specific workflow skills for the framework you choose — Next.js or Astro — alongside versioned docs and AGENTS/CLAUDE rules.
Architecture & Design
When making a non-trivial architectural choice that future agents should understand.
Example: capture why you chose server actions over route handlers.
Open skillAfter structural changes that affect docs, ADRs, or quality gates.
Example: update the ADR when a component boundary changes.
When designing component structure, state management, or deciding server vs client boundaries.
Example: decide whether a page stays server-first or needs a client island.
When deciding where a component belongs or preventing feature logic from leaking into shadcn primitives.
Example: keep a generated shadcn Button in components/ui and build the feature UI around it.
When building reusable components or refactoring components with boolean prop proliferation.
Example: split a card into Card, CardHeader, and CardBody instead of adding boolean props.
Open skillFramework & UI
When adding, customizing, or troubleshooting shadcn components.
Example: compose a form from shadcn primitives before writing custom UI.
Open skillWhen optimizing rendering, bundle size, or data loading patterns.
Example: memoize only when profiling shows a real rendering cost.
Open skillWhen adding motion to a project scaffolded with --motion.
Example: animate a component's entrance with transform and opacity, honoring prefers-reduced-motion.
Open skillQuality & Testing
When writing E2E tests, debugging flaky tests, or setting up test infrastructure.
Example: cover a locale switch with stable locators and assertions.
Open skillWhen automating browser interactions or debugging Playwright tests.
Example: reproduce a bug by running a focused browser flow from the CLI.
Open skillBefore marking a feature as done — runs lint, typecheck, format, tests.
Example: run lint, typecheck, format, and tests before closing a task.
Before commits to catch maintainability issues early.
Example: scan a page before commit to catch unnecessary client work.
When encountering unexpected behavior, test failures, or elusive bugs.
Example: reduce a failing test by isolating one assumption at a time.
Open skillWhen finishing a task — ensures evidence matches claims.
Example: run the verification command before saying the fix is done.
Open skillWhen writing or debugging Vitest tests, mocking, or snapshot testing.
Example: test async UI behavior with await and precise assertions.
Open skillTypeScript
When implementing complex type logic or reusable type utilities.
Example: model a discriminated union for a skill entry.
Open skillNext.js workflow skills
Purrfold installs these current workflow skills from `vercel/next.js`; Next.js reference guidance comes from versioned docs and AGENTS/CLAUDE rules.
When a project migrates to Cache Components and needs to choose between temporary opt-outs or in-place refactors.
Example: enable `cacheComponents`, run the adoption codemod, and clean routes top-down.
Open skillWhen a route has adopted Cache Components and you want to improve what appears in the shell or during navigation.
Example: compare before/after screenshots to confirm a Suspense boundary promoted more static content.
Open skillWhen a Next.js change needs framework errors, console, network, routes, and visible browser behavior checked together.
Example: cross-check `/_next/mcp` with a browser session to validate a page compiles and behaves as intended.
Open skillAstro framework skills
Purrfold installs this skill only for the Astro scaffold, sourced from astrolicious/agent-skills.
When scaffolding or extending an Astro project through Purrfold's Astro path.
Example: add a React island to an Astro route while keeping static output by default.
Open skill