Audit and fix accessibility issues across the portfolio to ensure WCAG 2.1 AA compliance.
日本語の概要は準備中です。原文の説明を表示しています。
Systematic debugging workflow for errors, performance issues, and runtime problems in the portfolio.
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Classify the error:
| Category | Examples | Priority |
|---|---|---|
| Build-time | TypeScript errors, lint failures, missing imports | Fix before commit |
| Runtime | Console errors, unhandled promises, null references | Fix before deploy |
| Hydration | Server/client HTML mismatch, useEffect missing | Fix before deploy |
| Network | API failures, CORS errors, timeout | Fix based on user impact |
| Performance | Slow LCP, high CLS, janky animations | Fix if regression |
| Browser-specific | Safari-only, mobile-only, Firefox-only | Fix if significant audience |
Step 1: Reproduce the error
Step 2: Read the error carefully
Step 3: Check common patterns
| Error pattern | Likely cause | Fix |
|---|---|---|
Cannot read property of undefined | Null data from API | Add null checks or ?? defaults |
Hydration mismatch | Server/client render difference | Add useEffect guard, mounted state |
Too many re-renders | State update in render | Move to useEffect or callback |
Invalid hook call | Conditional hook or wrong React | Ensure hooks are called unconditionally |
404 on _next/static | Stale service worker | Clear SW cache (see PWA skill) |
CORS error | Missing headers | Check API route CORS config |
Symptoms: Warning in console about hydration mismatch, content flickers on load.
Common causes:
Date/time rendering -- Server and client generate different strings
// BAD: server and client time differ
<span>{new Date().toLocaleDateString()}</span>
// GOOD: render only on client
const [mounted, setMounted] = useState(false);
useEffect(() => setMounted(true), []);
<span>{mounted ? new Date().toLocaleDateString() : ''}</span>
Browser extensions -- Extensions inject elements into the DOM
Conditional rendering based on window/document
// BAD
<div>{typeof window !== 'undefined' ? 'client' : 'server'}</div>
// GOOD: use useEffect
const [isClient, setIsClient] = useState(false);
useEffect(() => setIsClient(true), []);
DevTools → Network tab:
Fetch/XHR to see API callsStatus column for failures (4xx, 5xx)Preview tab for error detailsResponse Headers for CORS issuesCommon network issues:
| Status | Meaning | Fix |
|---|---|---|
| 400 | Bad request | Check request body/params |
| 401 | Unauthorized | Check API token |
| 403 | Forbidden | Check permissions/CORS |
| 404 | Not found | Check the API route exists |
| 429 | Rate limited | Add retry logic, back off |
| 500 | Server error | Check server logs |
| CORS error | Missing Access-Control-Allow-Origin | Add CORS headers to API route |
Chrome DevTools → Performance tab:
Summary tab for breakdown (scripting, rendering, painting)React DevTools → Profiler:
Quick performance checks:
# Lighthouse audit
npx lighthouse http://localhost:3000 --output html --view
# Bundle size check
npm run build 2>&1 | grep -E "First Load|shared"
DevTools → Memory tab:
Common memory leak sources:
useEffect returnsetInterval not clearedChrome DevTools → Toggle Device Toolbar:
Remote debugging (real device):
chrome://inspect with USB debugging| Problem | First thing to check |
|---|---|
| Page is blank | Console errors, build errors |
| Data not loading | Network tab, API routes |
| Styling broken | Tailwind classes, dark mode toggle |
| Slow page | Performance tab, bundle size |
| Works on desktop, broken on mobile | Responsive breakpoints, touch events |
| Works in Chrome, broken in Safari | CSS features, JS compatibility |
| Intermittent error | Race conditions, async timing |
まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Audit and fix accessibility issues across the portfolio to ensure WCAG 2.1 AA compliance.
日本語の概要は準備中です。原文の説明を表示しています。
Creates a new blog post document in the Sanity studio. Use when the user wants to write a blog post, publish an article, or schedule a future post.
日本語の概要は準備中です。原文の説明を表示しています。
Creates a new certification document in the Sanity studio. Use when the user wants to add a credential, certificate, or professional accreditation to the Certifications collection.
日本語の概要は準備中です。原文の説明を表示しています。
Adds a new skill MD file to the studio's skills collection. Use when the user wants to author a new step-by-step recipe for the studio's in-app Skills tool or the .agents mirror.
日本語の概要は準備中です。原文の説明を表示しています。
Creates a new project document in the Sanity studio. Use when the user wants to add a new portfolio project, a case study, or a work sample to the Projects collection.
日本語の概要は準備中です。原文の説明を表示しています。
Creates a new experience document in the Sanity studio. Use when the user wants to add a job, role, internship, or work history entry to the Experience collection.
日本語の概要は準備中です。原文の説明を表示しています。