Conversation
… React Auth monorepo
…g development cycles
There was a problem hiding this comment.
Pull request overview
This PR introduces repository-level AI agent personas and imports two external skill packs (React/Next.js best practices and React Native/Expo skills) to guide future AI-assisted work in this monorepo.
Changes:
- Added three VS Code/GitHub agent definitions (Developer, Reviewer, Orchestrator) under
.github/agents/. - Added two skill packs under
.agents/skills/(Vercel React best practices + Vercel React Native skills), including rules and metadata. - Added
skills-lock.jsonto pin skill sources and hashes.
Reviewed changes
Copilot reviewed 115 out of 116 changed files in this pull request and generated 5 comments.
Show a summary per file
| File | Description |
|---|---|
| skills-lock.json | Adds a lockfile pinning skill sources and hashes. |
| .github/agents/reviewer.agent.md | Adds a dedicated reviewer persona + references for consistent PR reviews. |
| .github/agents/orchestrator.agent.md | Adds an orchestrator persona for delegating implementation/review cycles. |
| .github/agents/developer.agent.md | Adds a developer persona focused on React web/native/Expo implementation. |
| .agents/skills/vercel-react-native-skills/SKILL.md | Adds React Native/Expo skill metadata and quick reference index. |
| .agents/skills/vercel-react-native-skills/README.md | Documents skill pack structure and how to add/maintain rules. |
| .agents/skills/vercel-react-native-skills/rules/_sections.md | Defines rule sections, ordering, and section metadata. |
| .agents/skills/vercel-react-native-skills/rules/_template.md | Provides a template for adding new RN skill rules. |
| .agents/skills/vercel-react-native-skills/rules/animation-derived-value.md | Adds Reanimated guidance for derivations via useDerivedValue. |
| .agents/skills/vercel-react-native-skills/rules/animation-gesture-detector-press.md | Adds guidance for press animations using Gesture Handler + Reanimated. |
| .agents/skills/vercel-react-native-skills/rules/animation-gpu-properties.md | Adds guidance to animate GPU-friendly properties (transform/opacity). |
| .agents/skills/vercel-react-native-skills/rules/design-system-compound-components.md | Adds guidance for compound component APIs in design systems. |
| .agents/skills/vercel-react-native-skills/rules/fonts-config-plugin.md | Adds guidance on embedding fonts via Expo config plugin. |
| .agents/skills/vercel-react-native-skills/rules/imports-design-system-folder.md | Adds guidance to re-export dependencies via a design system folder. |
| .agents/skills/vercel-react-native-skills/rules/js-hoist-intl.md | Adds guidance to hoist expensive Intl formatter creation. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-callbacks.md | Adds list callback stability guidance (contains a correctness issue in example). |
| .agents/skills/vercel-react-native-skills/rules/list-performance-function-references.md | Adds guidance on reference stability for virtualized lists. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-images.md | Adds guidance on using appropriately sized/compressed images in lists. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-inline-objects.md | Adds guidance to avoid inline objects/styles in renderItem. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-item-expensive.md | Adds guidance to keep list items lightweight (avoid heavy work in rows). |
| .agents/skills/vercel-react-native-skills/rules/list-performance-item-memo.md | Adds guidance on passing primitives for memoized list items. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-item-types.md | Adds guidance for heterogeneous list item recycling via item types. |
| .agents/skills/vercel-react-native-skills/rules/list-performance-virtualize.md | Adds guidance to prefer virtualizers over ScrollView mapped children. |
| .agents/skills/vercel-react-native-skills/rules/monorepo-native-deps-in-app.md | Adds guidance for autolinking native deps in monorepos. |
| .agents/skills/vercel-react-native-skills/rules/monorepo-single-dependency-versions.md | Adds guidance to keep dependency versions aligned across packages. |
| .agents/skills/vercel-react-native-skills/rules/navigation-native-navigators.md | Adds guidance to prefer native navigators/tabs for performance/UX. |
| .agents/skills/vercel-react-native-skills/rules/react-compiler-destructure-functions.md | Adds guidance for React Compiler-friendly destructuring patterns. |
| .agents/skills/vercel-react-native-skills/rules/react-compiler-reanimated-shared-values.md | Adds guidance for React Compiler-friendly shared value access patterns. |
| .agents/skills/vercel-react-native-skills/rules/react-state-dispatcher.md | Adds guidance to use functional state updates to avoid stale closures. |
| .agents/skills/vercel-react-native-skills/rules/react-state-fallback.md | Adds fallback-state pattern guidance (contains a naming/undefined identifier issue). |
| .agents/skills/vercel-react-native-skills/rules/react-state-minimize.md | Adds guidance to minimize state and derive values in render. |
| .agents/skills/vercel-react-native-skills/rules/rendering-no-falsy-and.md | Adds guidance to avoid && with possibly renderable falsy values in RN. |
| .agents/skills/vercel-react-native-skills/rules/rendering-text-in-text-component.md | Adds guidance to wrap strings in <Text> to avoid RN crashes. |
| .agents/skills/vercel-react-native-skills/rules/scroll-position-no-state.md | Adds guidance to avoid tracking scroll position in useState. |
| .agents/skills/vercel-react-native-skills/rules/state-ground-truth.md | Adds guidance on storing state as “truth” and deriving visuals. |
| .agents/skills/vercel-react-native-skills/rules/ui-expo-image.md | Adds guidance to prefer expo-image for performance/caching. |
| .agents/skills/vercel-react-native-skills/rules/ui-image-gallery.md | Adds guidance to use Galeria for image galleries/lightbox. |
| .agents/skills/vercel-react-native-skills/rules/ui-measure-views.md | Adds guidance for view measurement patterns with layout updates. |
| .agents/skills/vercel-react-native-skills/rules/ui-menus.md | Adds guidance to prefer native menus (e.g., Zeego) over custom JS menus. |
| .agents/skills/vercel-react-native-skills/rules/ui-native-modals.md | Adds guidance to prefer native modals/form sheets over JS sheets. |
| .agents/skills/vercel-react-native-skills/rules/ui-pressable.md | Adds guidance to prefer Pressable over legacy touchables. |
| .agents/skills/vercel-react-native-skills/rules/ui-safe-area-scroll.md | Adds guidance for safe-area handling via contentInsetAdjustmentBehavior. |
| .agents/skills/vercel-react-native-skills/rules/ui-scrollview-content-inset.md | Adds guidance for dynamic spacing via contentInset (contains an example correctness issue). |
| .agents/skills/vercel-react-native-skills/rules/ui-styling.md | Adds styling conventions for modern RN patterns. |
| .agents/skills/vercel-react-best-practices/SKILL.md | Adds React/Next.js best practices skill metadata and quick reference. |
| .agents/skills/vercel-react-best-practices/README.md | Documents skill pack structure and contribution workflow. |
| .agents/skills/vercel-react-best-practices/rules/_sections.md | Defines rule sections, ordering, and section metadata. |
| .agents/skills/vercel-react-best-practices/rules/_template.md | Provides a template for adding new React best-practice rules. |
| .agents/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md | Adds guidance for stable event subscriptions via refs. |
| .agents/skills/vercel-react-best-practices/rules/advanced-init-once.md | Adds guidance for once-per-app initialization patterns. |
| .agents/skills/vercel-react-best-practices/rules/advanced-use-latest.md | Adds guidance using useEffectEvent (needs version gating for this repo’s broad React peer range). |
| .agents/skills/vercel-react-best-practices/rules/async-api-routes.md | Adds guidance to prevent server waterfalls in API routes/actions. |
| .agents/skills/vercel-react-best-practices/rules/async-defer-await.md | Adds guidance to defer await until needed to avoid blocking. |
| .agents/skills/vercel-react-best-practices/rules/async-dependencies.md | Adds guidance for dependency-based parallelization. |
| .agents/skills/vercel-react-best-practices/rules/async-parallel.md | Adds guidance to use Promise.all for independent operations. |
| .agents/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md | Adds guidance for strategic Suspense boundaries for faster paint. |
| .agents/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md | Adds guidance to avoid barrel imports / optimize package imports. |
| .agents/skills/vercel-react-best-practices/rules/bundle-conditional.md | Adds guidance for conditional/lazy module loading. |
| .agents/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md | Adds guidance to defer non-critical third-party libs post-hydration. |
| .agents/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md | Adds guidance for dynamic imports of heavy components. |
| .agents/skills/vercel-react-best-practices/rules/bundle-preload.md | Adds guidance to preload bundles based on user intent. |
| .agents/skills/vercel-react-best-practices/rules/client-event-listeners.md | Adds guidance to deduplicate global listeners via SWR subscription. |
| .agents/skills/vercel-react-best-practices/rules/client-localstorage-schema.md | Adds guidance to version/minimize localStorage data. |
| .agents/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md | Adds guidance for passive listeners for scroll performance. |
| .agents/skills/vercel-react-best-practices/rules/client-swr-dedup.md | Adds guidance to use SWR for deduplication/caching. |
| .agents/skills/vercel-react-best-practices/rules/js-batch-dom-css.md | Adds guidance to avoid layout thrashing in DOM read/write patterns. |
| .agents/skills/vercel-react-best-practices/rules/js-cache-function-results.md | Adds guidance to cache repeated function calls via module Map. |
| .agents/skills/vercel-react-best-practices/rules/js-cache-property-access.md | Adds guidance to cache repeated property access in loops. |
| .agents/skills/vercel-react-best-practices/rules/js-cache-storage.md | Adds guidance to cache synchronous Storage API reads. |
| .agents/skills/vercel-react-best-practices/rules/js-combine-iterations.md | Adds guidance to combine multiple array passes into one loop. |
| .agents/skills/vercel-react-best-practices/rules/js-early-exit.md | Adds guidance for early returns to skip unnecessary work. |
| .agents/skills/vercel-react-best-practices/rules/js-flatmap-filter.md | Adds guidance to use flatMap to map+filter in one pass. |
| .agents/skills/vercel-react-best-practices/rules/js-hoist-regexp.md | Adds guidance to hoist/memoize RegExp creation. |
| .agents/skills/vercel-react-best-practices/rules/js-index-maps.md | Adds guidance to build Map indices for repeated lookups. |
| .agents/skills/vercel-react-best-practices/rules/js-length-check-first.md | Adds guidance to short-circuit expensive array comparisons with length checks. |
| .agents/skills/vercel-react-best-practices/rules/js-min-max-loop.md | Adds guidance to use O(n) loops for min/max instead of sorting. |
| .agents/skills/vercel-react-best-practices/rules/js-request-idle-callback.md | Adds guidance to defer non-critical work via requestIdleCallback. |
| .agents/skills/vercel-react-best-practices/rules/js-set-map-lookups.md | Adds guidance to use Set/Map for O(1) membership checks. |
| .agents/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md | Adds guidance to prefer toSorted() over mutating sort(). |
| .agents/skills/vercel-react-best-practices/rules/rendering-activity.md | Adds guidance to use React <Activity> (needs version gating for this repo’s broad React peer range). |
| .agents/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md | Adds guidance to animate a wrapper element vs SVG directly. |
| .agents/skills/vercel-react-best-practices/rules/rendering-conditional-render.md | Adds guidance to use explicit conditionals when falsy values can render. |
| .agents/skills/vercel-react-best-practices/rules/rendering-content-visibility.md | Adds guidance for content-visibility in long lists. |
| .agents/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md | Adds guidance to avoid hydration flicker for client-only data. |
| .agents/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md | Adds guidance to suppress expected hydration mismatches. |
| .agents/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md | Adds guidance to hoist static JSX outside components. |
| .agents/skills/vercel-react-best-practices/rules/rendering-resource-hints.md | Adds guidance for React DOM resource hint APIs. |
| .agents/skills/vercel-react-best-practices/rules/rendering-script-defer-async.md | Adds guidance to use defer/async on scripts (and Next.js alternatives). |
| .agents/skills/vercel-react-best-practices/rules/rendering-svg-precision.md | Adds guidance to reduce SVG coordinate precision. |
| .agents/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md | Adds guidance to use useTransition for loading state patterns. |
| .agents/skills/vercel-react-best-practices/rules/rerender-defer-reads.md | Adds guidance to defer dynamic reads to usage points to avoid subscriptions. |
| .agents/skills/vercel-react-best-practices/rules/rerender-dependencies.md | Adds guidance for narrower effect dependencies. |
| .agents/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md | Adds guidance to compute derived state in render, not effects. |
| .agents/skills/vercel-react-best-practices/rules/rerender-derived-state.md | Adds guidance to subscribe to derived booleans vs continuous values. |
| .agents/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md | Adds guidance for functional setState to avoid stale closures. |
| .agents/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md | Adds guidance to use lazy state initialization for expensive initial values. |
| .agents/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md | Adds guidance to hoist default non-primitive values for memoized components. |
| .agents/skills/vercel-react-best-practices/rules/rerender-memo.md | Adds guidance to extract expensive work into memoized components. |
| .agents/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md | Adds guidance to move interaction logic into event handlers. |
| .agents/skills/vercel-react-best-practices/rules/rerender-no-inline-components.md | Adds guidance to avoid defining components inside components. |
| .agents/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md | Adds guidance to avoid useMemo for simple primitive expressions. |
| .agents/skills/vercel-react-best-practices/rules/rerender-split-combined-hooks.md | Adds guidance to split hooks with independent dependencies. |
| .agents/skills/vercel-react-best-practices/rules/rerender-transitions.md | Adds guidance to use transitions for non-urgent updates. |
| .agents/skills/vercel-react-best-practices/rules/rerender-use-deferred-value.md | Adds guidance to use useDeferredValue for expensive derived renders. |
| .agents/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md | Adds guidance to use refs for transient frequently changing values. |
| .agents/skills/vercel-react-best-practices/rules/server-after-nonblocking.md | Adds guidance to use Next.js after() for non-blocking work. |
| .agents/skills/vercel-react-best-practices/rules/server-auth-actions.md | Adds guidance to authenticate/authorize server actions. |
| .agents/skills/vercel-react-best-practices/rules/server-cache-lru.md | Adds guidance for cross-request LRU caching. |
| .agents/skills/vercel-react-best-practices/rules/server-cache-react.md | Adds guidance for per-request deduplication via React.cache(). |
| .agents/skills/vercel-react-best-practices/rules/server-dedup-props.md | Adds guidance to avoid duplicate serialization at RSC boundaries. |
| .agents/skills/vercel-react-best-practices/rules/server-hoist-static-io.md | Adds guidance to hoist static I/O to module scope. |
| .agents/skills/vercel-react-best-practices/rules/server-parallel-fetching.md | Adds guidance to parallelize server fetching via composition. |
| .agents/skills/vercel-react-best-practices/rules/server-parallel-nested-fetching.md | Adds guidance to avoid nested-data waterfalls within Promise.all. |
| .agents/skills/vercel-react-best-practices/rules/server-serialization.md | Adds guidance to minimize serialization across RSC boundaries. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
.agents/skills/vercel-react-native-skills/rules/list-performance-callbacks.md
Show resolved
Hide resolved
.agents/skills/vercel-react-native-skills/rules/ui-scrollview-content-inset.md
Show resolved
Hide resolved
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Affected Package(s)
@forward-software/react-auth(lib)@forward-software/react-auth-google(packages/google-signin)Description of Changes
Added agent personas and React/React Native/Expo skills to be used in AI-assisted future development on the repo.
Breaking Changes
None
How to Test
Vitest) and build steps pass successfully on this PR.pnpm installto install dependencies.pnpm --filter <affected-package> testto run tests for the affected package.pnpm --filter <affected-package> buildto verify the build succeeds.pnpm --filter <affected-package> lintto check for linting errors.Checklist
Notes for Reviewers