Skip to content

Latest commit

 

History

History
57 lines (37 loc) · 4.04 KB

File metadata and controls

57 lines (37 loc) · 4.04 KB

Agents & Skills

This document outlines the available specialized agents (skills) that can be invoked to assist with development tasks. Each agent is an expert in a specific domain.

General Guidelines

  1. Be Specific: When making a request, clearly state your goal and which part of the codebase you're working on.
  2. Suggest an Agent: If you know which agent is best for the task, you can suggest using it (e.g., "Using zod-expert, add validation to this schema"). The main agent will delegate tasks appropriately.
  3. Review Changes: Agents will propose code changes. Always review them before accepting.

Best Practices for Prompting

Based on successful interactions, incorporating the following practices into your prompts leads to better outcomes.

  1. Request a Task Breakdown: Asking for a plan (e.g., "write down Task.md") before work begins helps structure the process. It ensures the agent understands the scope and provides you with a clear roadmap for tracking progress.

  2. Define Clear, Atomic Features: Instead of a single broad goal, list the specific features required (e.g., "display address," "display balance," "implement send form"). This removes ambiguity and ensures all requirements are met.

  3. Specify the Technology Stack: Explicitly state the libraries to be used (e.g., "use RainbowKit and Wagmi," "integrate with React Hook Form"). This prevents the agent from making incorrect assumptions and ensures it adheres to your project's conventions.

  4. Provide Essential Data Upfront: Include critical information like contract addresses or API endpoints directly in the prompt. This avoids interruptions and allows the agent to work more efficiently.

  5. Ask for a Step-by-Step Workflow: Requesting the agent to stop for review after completing a step gives you control over the process. This iterative approach allows for feedback and course correction, ensuring the final result aligns with your expectations.


Available Agents

Here is a list of the available agents and their expertise.

1. jotai-expert

  • Expertise: Expert guidance for Jotai state management in React applications. Provides best practices, performance optimization, and architectural patterns.
  • When to use: When designing atom structures, implementing state management, optimizing re-renders, handling async state, or reviewing Jotai code.

2. react-architect-skills

  • Expertise: Provides guidelines for React and TanStack Router folder structure and feature-module architecture.
  • When to use: When writing, reviewing, or refactoring React code for structure, naming, colocation, encapsulation, and layer separation.

3. react-hook-form

  • Expertise: React Hook Form performance optimization for client-side form validation using useForm, useWatch, useController, and useFieldArray.
  • When to use: When building client-side controlled forms with the React Hook Form library.

4. tanstack-query

  • Expertise: Helps manage server state in React with TanStack Query v5. Covers useMutationState, optimistic updates, throwOnError, network mode, and infiniteQueryOptions.
  • When to use: When setting up data fetching, fixing v4→v5 migration errors, or debugging SSR/hydration issues.

5. tanstack-router

  • Expertise: Build type-safe, file-based React routing with TanStack Router. Supports client-side navigation, route loaders, and TanStack Query integration.
  • When to use: When implementing file-based routing patterns, building SPAs with TypeScript routing, or troubleshooting router-related issues.

6. vercel-react-only-best-practices

  • Expertise: React performance optimization guidelines from Vercel Engineering.
  • When to use: When writing, reviewing, or refactoring React code to ensure optimal performance patterns.

7. zod

  • Expertise: Zod schema validation best practices for type safety, parsing, and error handling.
  • When to use: When defining z.object schemas, using z.string validations, safeParse, or z.infer.