Speed Insights
Grade N/A
Not captured
https://nickradford.dev
From Nickradford.dev
LCP
N/A
Largest paint
TBT
N/A
Blocking time
CLS
N/A
Layout shift
74
out of 100
72
out of 100
66/92 rule points
82
out of 100
62/76 rule points
72
out of 100
68/94 rule points
71
out of 100
78/110 rule points
Category point breakdown
Biggest score-losing checks
axe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
Detected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
Detected 0 CTA candidate(s).
HTTP 404 returned for sitemap_xml.
Add common public security headers
-14 rule ptsWhat failed
Several basic browser protection headers were not visible.
Evidence
Detected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
Priority
Priority 5: fix before sharing the page publicly.
Why it matters
These headers reduce avoidable browser-side risk and show a baseline of care before launch.
How to fix it
Configure headers such as Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, and Referrer-Policy.
Agent Prompt
## Role
Act as a focused public web security remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: security_common_headers.
- Fix title: Add common public security headers.
- Scanner check: Common security headers.
- Category: Security.
- Status: fail.
- Severity: high.
- Priority: 5; lower numbers are more urgent.
- Score impact: 14 rule points lost.
- Evidence: Detected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
- What needs attention: Several basic browser protection headers were not visible.
- Why it matters: These headers reduce avoidable browser-side risk and show a baseline of care before launch.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: hosting headers, server middleware, edge/proxy config, CDN rules, and framework security header configuration; server, edge, CDN, hosting, proxy, form action, asset URL, cookie, and public file access configuration; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Configure headers such as Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, and Referrer-Policy.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Add missing common browser protection headers with values appropriate for the site.
- Treat an existing CSP frame-ancestors directive as valid frame protection; preserve the directive and its allowed origins exactly instead of adding or substituting X-Frame-Options.
- Test CSP or frame policies carefully so they do not break scripts, images, analytics, payments, embeds, or auth.
- Prefer narrow, production-safe security configuration changes over blanket disables or permissive rules.
- Preserve authentication, authorization, private paths, and sensitive file protections while fixing the public launch page.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Important security headers are visible on the public response.
- Any existing CSP frame-ancestors directive and its allowed origins remain unchanged.
- The page still renders and key flows still work after header changes.
- The public URL keeps legitimate visitors and assets working while removing the reported browser-side or public exposure risk.
- The change does not weaken security headers, authentication, authorization, or private route protections.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- If an existing Content-Security-Policy contains a frame-ancestors directive, preserve that directive exactly, including its allowed origins, unless the site owner explicitly asks to change it. Do not replace it with X-Frame-Options merely to satisfy this scan.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Fix rendered axe accessibility violations
-18 rule ptsWhat failed
The rendered page has accessibility rule violations detected by axe-core.
Evidence
axe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
Priority
Priority 5: fix before sharing the page publicly.
Why it matters
axe checks the actual browser-rendered page, so these issues can affect people using keyboards, screen readers, or other assistive technology.
How to fix it
Fix the top axe rule IDs first, especially critical and serious violations around names, roles, labels, headings, contrast, landmarks, and keyboard-accessible controls.
Agent Prompt
## Role
Act as a focused web accessibility remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: accessibility_axe_violations.
- Fix title: Fix rendered axe accessibility violations.
- Scanner check: Rendered axe accessibility violations.
- Category: Accessibility.
- Status: fail.
- Severity: high.
- Priority: 5; lower numbers are more urgent.
- Score impact: 18 rule points lost.
- Evidence: axe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
- What needs attention: The rendered page has accessibility rule violations detected by axe-core.
- Why it matters: axe checks the actual browser-rendered page, so these issues can affect people using keyboards, screen readers, or other assistive technology.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: axe violation details, affected selectors, rendered DOM, component source, and interaction state that triggered the issue; semantic markup, labels, landmarks, headings, focus states, image rendering, form controls, and browser-rendered accessibility output; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Fix the top axe rule IDs first, especially critical and serious violations around names, roles, labels, headings, contrast, landmarks, and keyboard-accessible controls.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Fix each reported accessibility violation at the semantic source.
- Avoid suppressing automated checks unless there is a documented false positive.
- Fix the semantic or interaction source of the issue rather than hiding warnings with ARIA or visual-only workarounds.
- Keep keyboard, screen reader, and touch users in the verification path.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Critical and serious axe issues tied to this page are resolved or clearly documented as non-reproducible.
- Fixes do not introduce new keyboard, label, contrast, or landmark regressions.
- The affected UI remains usable by keyboard and assistive technology and does not introduce heading, label, focus, or contrast regressions.
- The change can be checked in the browser or with an accessibility audit tool when available.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Make the primary CTA obvious
-14 rule ptsWhat failed
The page does not have a detectable call to action.
Evidence
Detected 0 CTA candidate(s).
Priority
Priority 4: fix before sharing the page publicly.
Why it matters
Early visitors need a clear next step, such as trying the product, joining a waitlist, or booking a demo.
How to fix it
Add one prominent CTA above the fold with action-oriented text such as Start, Join, Try, Book, or Get started.
Agent Prompt
## Role
Act as a focused conversion-focused frontend quality remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: design_primary_cta.
- Fix title: Make the primary CTA obvious.
- Scanner check: Visible primary CTA.
- Category: Design.
- Status: fail.
- Severity: high.
- Priority: 4; lower numbers are more urgent.
- Score impact: 14 rule points lost.
- Evidence: Detected 0 CTA candidate(s).
- What needs attention: The page does not have a detectable call to action.
- Why it matters: Early visitors need a clear next step, such as trying the product, joining a waitlist, or booking a demo.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: hero area, primary action buttons/links, above-the-fold content, navigation CTAs, and conversion events; page layout, responsive CSS, component states, copy hierarchy, CTA placement, spacing tokens, rendered console output, and performance-sensitive assets; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add one prominent CTA above the fold with action-oriented text such as Start, Join, Try, Book, or Get started.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Make the primary action visible, specific, and aligned with the page offer.
- Use a real link or button with clear text and preserve tracking or form behavior.
- Improve the actual rendered page at mobile and desktop sizes, not only the source code shape.
- Preserve core conversion flows while making layout, hierarchy, readability, or runtime health better.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- A visitor can quickly identify the main next action.
- The CTA works in mobile and desktop layouts without overlap or ambiguity.
- The rendered page is visually stable and usable on mobile and desktop viewports.
- The fix does not hide content, break CTAs, introduce console errors, or reduce clarity for visitors.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Publish sitemap.xml
-12 rule ptsWhat failed
The sitemap file was not reachable.
Evidence
HTTP 404 returned for sitemap_xml.
Priority
Priority 7: fix during launch polish.
Why it matters
A sitemap helps search engines discover the landing page and related public pages sooner.
How to fix it
Add /sitemap.xml with your public URLs and confirm it returns HTTP 200.
Agent Prompt
## Role
Act as a focused technical SEO, AEO, and crawlability remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: seo_sitemap_xml.
- Fix title: Publish sitemap.xml.
- Scanner check: sitemap.xml reachability.
- Category: SEO / AEO.
- Status: fail.
- Severity: high.
- Priority: 7; lower numbers are more urgent.
- Score impact: 12 rule points lost.
- Evidence: HTTP 404 returned for sitemap_xml.
- What needs attention: The sitemap file was not reachable.
- Why it matters: A sitemap helps search engines discover the landing page and related public pages sooner.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: robots.txt Sitemap directives, static sitemap files, dynamic sitemap routes, sitemap indexes, canonical URL generation, and deployment output; metadata/head configuration, canonical URL logic, robots and sitemap routes, structured data blocks, page copy, headings, and internal navigation; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add /sitemap.xml with your public URLs and confirm it returns HTTP 200.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Provide a reachable sitemap URL with valid urlset or sitemapindex XML. Preserve an existing robots.txt Sitemap directive such as /sitemap_index.xml when it is intentional and valid.
- Include canonical public URLs and avoid localhost, staging, private, noindex, or duplicate URLs.
- Keep all metadata, headings, schema, canonical URLs, and visible copy consistent with the same public facts.
- Use accurate, crawlable, human-visible content as the source for search and answer-engine improvements.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- The sitemap URL declared in robots.txt, or /sitemap.xml when no directive exists, returns HTTP 200 with a valid urlset or sitemapindex root.
- The sitemap contains at least the scanned public page or its canonical equivalent.
- The public URL exposes the corrected crawl/search/answer signal in rendered HTML or reachable public files.
- The change should be visible to a fresh unauthenticated request and likely improve the related FreeScan SEO / AEO check on rescan.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Add basic structured data
-10 rule ptsWhat failed
No JSON-LD schema was detected on the page.
Evidence
Detected 0 JSON-LD schema block(s).
Priority
Priority 12: fix during launch polish.
Why it matters
Structured data gives search and answer engines explicit facts about your product.
How to fix it
Add JSON-LD for SoftwareApplication, Product, Organization, or WebSite using only accurate public facts.
Agent Prompt
## Role
Act as a focused technical SEO, AEO, and crawlability remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: seo_schema_presence.
- Fix title: Add basic structured data.
- Scanner check: Schema presence.
- Category: SEO / AEO.
- Status: fail.
- Severity: high.
- Priority: 12; lower numbers are more urgent.
- Score impact: 10 rule points lost.
- Evidence: Detected 0 JSON-LD schema block(s).
- What needs attention: No JSON-LD schema was detected on the page.
- Why it matters: Structured data gives search and answer engines explicit facts about your product.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: JSON-LD generation in document head, route metadata, CMS SEO/schema fields, or server-rendered templates; metadata/head configuration, canonical URL logic, robots and sitemap routes, structured data blocks, page copy, headings, and internal navigation; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add JSON-LD for SoftwareApplication, Product, Organization, or WebSite using only accurate public facts.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Add JSON-LD types that fit the visible page, such as Organization, WebSite, SoftwareApplication/Product, FAQPage, or BreadcrumbList.
- Use only accurate public facts and avoid unsupported ratings, prices, reviews, authors, or claims.
- Keep all metadata, headings, schema, canonical URLs, and visible copy consistent with the same public facts.
- Use accurate, crawlable, human-visible content as the source for search and answer-engine improvements.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- The public HTML includes at least one application/ld+json block.
- The schema parses as valid JSON and matches facts visible or clearly supported on the public page.
- The public URL exposes the corrected crawl/search/answer signal in rendered HTML or reachable public files.
- The change should be visible to a fresh unauthenticated request and likely improve the related FreeScan SEO / AEO check on rescan.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.SEO / AEO
Severity mix: 0 critical, 6 high, 3 medium, 2 low.
sitemap.xml reachability
-12 rule ptsHTTP 404 returned for sitemap_xml.
Schema presence
-10 rule ptsDetected 0 JSON-LD schema block(s).
LLM-readable file
-4 rule ptsHTTP 404 returned for llms_txt.
Security
Severity mix: 2 critical, 3 high, 0 medium, 0 low.
Common security headers
-14 rule ptsDetected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
Accessibility
Severity mix: 0 critical, 3 high, 5 medium, 0 low.
Rendered axe accessibility violations
-18 rule ptsaxe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
Basic contrast
-8 rule pts25 of 100 rendered text color sample(s) missed WCAG contrast targets. Worst rendered ratio: 1.
Design
Severity mix: 0 critical, 3 high, 6 medium, 2 low.
Visible primary CTA
-14 rule ptsDetected 0 CTA candidate(s).
Readability signals
-9 rule ptsAverage sentence length is about 38 word(s).
Visual hierarchy
-9 rule ptsDetected 1 hierarchy signal(s) from headings, CTA, and emphasized text.
Failed checks
These checks need attention.
sitemap.xml reachability
0/12HTTP 404 returned for sitemap_xml.
Failed: earned 0 of 12 points.
Priority: Priority 7: fix during launch polish.
Why it matters: A sitemap helps search engines discover the landing page and related public pages sooner.
Fix: Add /sitemap.xml with your public URLs and confirm it returns HTTP 200.
Agent Prompt
## Role
Act as a focused technical SEO, AEO, and crawlability remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: seo_sitemap_xml.
- Fix title: Publish sitemap.xml.
- Scanner check: sitemap.xml reachability.
- Category: SEO / AEO.
- Status: fail.
- Severity: high.
- Priority: 7; lower numbers are more urgent.
- Score impact: 12 of 12 rule points lost.
- Evidence: HTTP 404 returned for sitemap_xml.
- What needs attention: The sitemap file was not reachable.
- Why it matters: A sitemap helps search engines discover the landing page and related public pages sooner.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: robots.txt Sitemap directives, static sitemap files, dynamic sitemap routes, sitemap indexes, canonical URL generation, and deployment output; metadata/head configuration, canonical URL logic, robots and sitemap routes, structured data blocks, page copy, headings, and internal navigation; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add /sitemap.xml with your public URLs and confirm it returns HTTP 200.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Provide a reachable sitemap URL with valid urlset or sitemapindex XML. Preserve an existing robots.txt Sitemap directive such as /sitemap_index.xml when it is intentional and valid.
- Include canonical public URLs and avoid localhost, staging, private, noindex, or duplicate URLs.
- Keep all metadata, headings, schema, canonical URLs, and visible copy consistent with the same public facts.
- Use accurate, crawlable, human-visible content as the source for search and answer-engine improvements.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- The sitemap URL declared in robots.txt, or /sitemap.xml when no directive exists, returns HTTP 200 with a valid urlset or sitemapindex root.
- The sitemap contains at least the scanned public page or its canonical equivalent.
- The public URL exposes the corrected crawl/search/answer signal in rendered HTML or reachable public files.
- The change should be visible to a fresh unauthenticated request and likely improve the related FreeScan SEO / AEO check on rescan.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.LLM-readable file
0/4HTTP 404 returned for llms_txt.
Failed: earned 0 of 4 points.
Priority: Priority 24: lower-risk cleanup after urgent launch blockers.
Why it matters: A short LLM-readable file can help answer engines and AI tools summarize your product accurately.
Fix: Add /llms.txt or /.well-known/llms.txt with the product name, audience, value proposition, and key public links.
Agent Prompt
## Role
Act as a focused technical SEO, AEO, and crawlability remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: seo_llms_txt.
- Fix title: Add an LLM-readable product file.
- Scanner check: LLM-readable file.
- Category: SEO / AEO.
- Status: fail.
- Severity: low.
- Priority: 24; lower numbers are more urgent.
- Score impact: 4 of 4 rule points lost.
- Evidence: HTTP 404 returned for llms_txt.
- What needs attention: The scan did not find llms.txt or .well-known/llms.txt.
- Why it matters: A short LLM-readable file can help answer engines and AI tools summarize your product accurately.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: public /llms.txt or /.well-known/llms.txt route/file and source content used to describe the product; metadata/head configuration, canonical URL logic, robots and sitemap routes, structured data blocks, page copy, headings, and internal navigation; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add /llms.txt or /.well-known/llms.txt with the product name, audience, value proposition, and key public links.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Add a concise text file with product name, audience, value proposition, important public links, and any relevant docs/support URLs.
- Keep it factual and aligned with visible public content.
- Keep all metadata, headings, schema, canonical URLs, and visible copy consistent with the same public facts.
- Use accurate, crawlable, human-visible content as the source for search and answer-engine improvements.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- /llms.txt or /.well-known/llms.txt returns HTTP 200 publicly.
- The content is short, accurate, and useful for AI tools without exposing private details.
- The public URL exposes the corrected crawl/search/answer signal in rendered HTML or reachable public files.
- The change should be visible to a fresh unauthenticated request and likely improve the related FreeScan SEO / AEO check on rescan.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Schema presence
0/10Detected 0 JSON-LD schema block(s).
Failed: earned 0 of 10 points.
Priority: Priority 12: fix during launch polish.
Why it matters: Structured data gives search and answer engines explicit facts about your product.
Fix: Add JSON-LD for SoftwareApplication, Product, Organization, or WebSite using only accurate public facts.
Agent Prompt
## Role
Act as a focused technical SEO, AEO, and crawlability remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: seo_schema_presence.
- Fix title: Add basic structured data.
- Scanner check: Schema presence.
- Category: SEO / AEO.
- Status: fail.
- Severity: high.
- Priority: 12; lower numbers are more urgent.
- Score impact: 10 of 10 rule points lost.
- Evidence: Detected 0 JSON-LD schema block(s).
- What needs attention: No JSON-LD schema was detected on the page.
- Why it matters: Structured data gives search and answer engines explicit facts about your product.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: JSON-LD generation in document head, route metadata, CMS SEO/schema fields, or server-rendered templates; metadata/head configuration, canonical URL logic, robots and sitemap routes, structured data blocks, page copy, headings, and internal navigation; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add JSON-LD for SoftwareApplication, Product, Organization, or WebSite using only accurate public facts.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Add JSON-LD types that fit the visible page, such as Organization, WebSite, SoftwareApplication/Product, FAQPage, or BreadcrumbList.
- Use only accurate public facts and avoid unsupported ratings, prices, reviews, authors, or claims.
- Keep all metadata, headings, schema, canonical URLs, and visible copy consistent with the same public facts.
- Use accurate, crawlable, human-visible content as the source for search and answer-engine improvements.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- The public HTML includes at least one application/ld+json block.
- The schema parses as valid JSON and matches facts visible or clearly supported on the public page.
- The public URL exposes the corrected crawl/search/answer signal in rendered HTML or reachable public files.
- The change should be visible to a fresh unauthenticated request and likely improve the related FreeScan SEO / AEO check on rescan.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Common security headers
4/18Detected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
Failed: earned 4 of 18 points from partial coverage.
Priority: Priority 5: fix before sharing the page publicly.
Why it matters: These headers reduce avoidable browser-side risk and show a baseline of care before launch.
Fix: Configure headers such as Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, and Referrer-Policy.
Agent Prompt
## Role
Act as a focused public web security remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: security_common_headers.
- Fix title: Add common public security headers.
- Scanner check: Common security headers.
- Category: Security.
- Status: fail.
- Severity: high.
- Priority: 5; lower numbers are more urgent.
- Score impact: 14 of 18 rule points lost.
- Evidence: Detected 1 of 5 common public security headers. Present: strict-transport-security. Missing: content-security-policy, x-content-type-options, x-frame-options, referrer-policy.
- What needs attention: Several basic browser protection headers were not visible.
- Why it matters: These headers reduce avoidable browser-side risk and show a baseline of care before launch.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: hosting headers, server middleware, edge/proxy config, CDN rules, and framework security header configuration; server, edge, CDN, hosting, proxy, form action, asset URL, cookie, and public file access configuration; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Configure headers such as Strict-Transport-Security, Content-Security-Policy, X-Content-Type-Options, X-Frame-Options, and Referrer-Policy.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Add missing common browser protection headers with values appropriate for the site.
- Treat an existing CSP frame-ancestors directive as valid frame protection; preserve the directive and its allowed origins exactly instead of adding or substituting X-Frame-Options.
- Test CSP or frame policies carefully so they do not break scripts, images, analytics, payments, embeds, or auth.
- Prefer narrow, production-safe security configuration changes over blanket disables or permissive rules.
- Preserve authentication, authorization, private paths, and sensitive file protections while fixing the public launch page.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Important security headers are visible on the public response.
- Any existing CSP frame-ancestors directive and its allowed origins remain unchanged.
- The page still renders and key flows still work after header changes.
- The public URL keeps legitimate visitors and assets working while removing the reported browser-side or public exposure risk.
- The change does not weaken security headers, authentication, authorization, or private route protections.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- If an existing Content-Security-Policy contains a frame-ancestors directive, preserve that directive exactly, including its allowed origins, unless the site owner explicitly asks to change it. Do not replace it with X-Frame-Options merely to satisfy this scan.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Basic contrast
0/825 of 100 rendered text color sample(s) missed WCAG contrast targets. Worst rendered ratio: 1.
Failed: earned 0 of 8 points.
Priority: Priority 20: lower-risk cleanup after urgent launch blockers.
Why it matters: Low contrast makes a launch page feel less polished and can exclude users with low vision.
Fix: Review key text, buttons, and links against a 4.5:1 contrast target for normal text.
Agent Prompt
## Role
Act as a focused web accessibility remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: accessibility_contrast.
- Fix title: Improve detectable color contrast.
- Scanner check: Basic contrast.
- Category: Accessibility.
- Status: fail.
- Severity: medium.
- Priority: 20; lower numbers are more urgent.
- Score impact: 8 of 8 rule points lost.
- Evidence: 25 of 100 rendered text color sample(s) missed WCAG contrast targets. Worst rendered ratio: 1.
- What needs attention: The scanner found text/background color pairs that may be hard to read, or could not verify contrast.
- Why it matters: Low contrast makes a launch page feel less polished and can exclude users with low vision.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: CSS variables, design tokens, theme config, text/background combinations, buttons, links, badges, and disabled states; semantic markup, labels, landmarks, headings, focus states, image rendering, form controls, and browser-rendered accessibility output; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Review key text, buttons, and links against a 4.5:1 contrast target for normal text.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Adjust foreground/background colors or font treatment where contrast is too low.
- Preserve brand feel while making text readable in real viewport states.
- Fix the semantic or interaction source of the issue rather than hiding warnings with ARIA or visual-only workarounds.
- Keep keyboard, screen reader, and touch users in the verification path.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Important text and controls meet reasonable contrast targets in rendered states.
- No new low-contrast states are introduced.
- The affected UI remains usable by keyboard and assistive technology and does not introduce heading, label, focus, or contrast regressions.
- The change can be checked in the browser or with an accessibility audit tool when available.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Rendered axe accessibility violations
0/18axe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
Failed: earned 0 of 18 points.
Priority: Priority 5: fix before sharing the page publicly.
Why it matters: axe checks the actual browser-rendered page, so these issues can affect people using keyboards, screen readers, or other assistive technology.
Fix: Fix the top axe rule IDs first, especially critical and serious violations around names, roles, labels, headings, contrast, landmarks, and keyboard-accessible controls.
Agent Prompt
## Role
Act as a focused web accessibility remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: accessibility_axe_violations.
- Fix title: Fix rendered axe accessibility violations.
- Scanner check: Rendered axe accessibility violations.
- Category: Accessibility.
- Status: fail.
- Severity: high.
- Priority: 5; lower numbers are more urgent.
- Score impact: 18 of 18 rule points lost.
- Evidence: axe found 4 violation rule(s), including 3 serious or critical rule(s). Top rules: aria-command-name (1), color-contrast (32), list (1), landmark-unique (1).
- What needs attention: The rendered page has accessibility rule violations detected by axe-core.
- Why it matters: axe checks the actual browser-rendered page, so these issues can affect people using keyboards, screen readers, or other assistive technology.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: axe violation details, affected selectors, rendered DOM, component source, and interaction state that triggered the issue; semantic markup, labels, landmarks, headings, focus states, image rendering, form controls, and browser-rendered accessibility output; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Fix the top axe rule IDs first, especially critical and serious violations around names, roles, labels, headings, contrast, landmarks, and keyboard-accessible controls.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Fix each reported accessibility violation at the semantic source.
- Avoid suppressing automated checks unless there is a documented false positive.
- Fix the semantic or interaction source of the issue rather than hiding warnings with ARIA or visual-only workarounds.
- Keep keyboard, screen reader, and touch users in the verification path.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Critical and serious axe issues tied to this page are resolved or clearly documented as non-reproducible.
- Fixes do not introduce new keyboard, label, contrast, or landmark regressions.
- The affected UI remains usable by keyboard and assistive technology and does not introduce heading, label, focus, or contrast regressions.
- The change can be checked in the browser or with an accessibility audit tool when available.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Visible primary CTA
0/14Detected 0 CTA candidate(s).
Failed: earned 0 of 14 points.
Priority: Priority 4: fix before sharing the page publicly.
Why it matters: Early visitors need a clear next step, such as trying the product, joining a waitlist, or booking a demo.
Fix: Add one prominent CTA above the fold with action-oriented text such as Start, Join, Try, Book, or Get started.
Agent Prompt
## Role
Act as a focused conversion-focused frontend quality remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: design_primary_cta.
- Fix title: Make the primary CTA obvious.
- Scanner check: Visible primary CTA.
- Category: Design.
- Status: fail.
- Severity: high.
- Priority: 4; lower numbers are more urgent.
- Score impact: 14 of 14 rule points lost.
- Evidence: Detected 0 CTA candidate(s).
- What needs attention: The page does not have a detectable call to action.
- Why it matters: Early visitors need a clear next step, such as trying the product, joining a waitlist, or booking a demo.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: hero area, primary action buttons/links, above-the-fold content, navigation CTAs, and conversion events; page layout, responsive CSS, component states, copy hierarchy, CTA placement, spacing tokens, rendered console output, and performance-sensitive assets; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Add one prominent CTA above the fold with action-oriented text such as Start, Join, Try, Book, or Get started.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Make the primary action visible, specific, and aligned with the page offer.
- Use a real link or button with clear text and preserve tracking or form behavior.
- Improve the actual rendered page at mobile and desktop sizes, not only the source code shape.
- Preserve core conversion flows while making layout, hierarchy, readability, or runtime health better.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- A visitor can quickly identify the main next action.
- The CTA works in mobile and desktop layouts without overlap or ambiguity.
- The rendered page is visually stable and usable on mobile and desktop viewports.
- The fix does not hide content, break CTAs, introduce console errors, or reduce clarity for visitors.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Readability signals
0/9Average sentence length is about 38 word(s).
Failed: earned 0 of 9 points.
Priority: Priority 23: lower-risk cleanup after urgent launch blockers.
Why it matters: Launch visitors often skim; long sentences make the offer harder to understand.
Fix: Shorten long sentences, use direct language, and break dense paragraphs into smaller sections.
Agent Prompt
## Role
Act as a focused conversion-focused frontend quality remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: design_readability.
- Fix title: Simplify sentence length.
- Scanner check: Readability signals.
- Category: Design.
- Status: fail.
- Severity: medium.
- Priority: 23; lower numbers are more urgent.
- Score impact: 9 of 9 rule points lost.
- Evidence: Average sentence length is about 38 word(s).
- What needs attention: The page copy appears difficult to scan quickly.
- Why it matters: Launch visitors often skim; long sentences make the offer harder to understand.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: font sizes, line height, measure, color, section spacing, paragraph length, and mobile typography; page layout, responsive CSS, component states, copy hierarchy, CTA placement, spacing tokens, rendered console output, and performance-sensitive assets; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Shorten long sentences, use direct language, and break dense paragraphs into smaller sections.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Improve readability with appropriate type size, line height, spacing, and content grouping.
- Keep design changes minimal and aligned with the existing system.
- Improve the actual rendered page at mobile and desktop sizes, not only the source code shape.
- Preserve core conversion flows while making layout, hierarchy, readability, or runtime health better.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- Core content is comfortable to read on mobile and desktop.
- No text overlaps, truncates awkwardly, or becomes too small.
- The rendered page is visually stable and usable on mobile and desktop viewports.
- The fix does not hide content, break CTAs, introduce console errors, or reduce clarity for visitors.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Visual hierarchy
0/9Detected 1 hierarchy signal(s) from headings, CTA, and emphasized text.
Failed: earned 0 of 9 points.
Priority: Priority 12: fix during launch polish.
Why it matters: Hierarchy tells visitors what to read first and what action to take next.
Fix: Create a clear H1, supportive section headings, emphasized proof, and one visually prominent primary CTA.
Agent Prompt
## Role
Act as a focused conversion-focused frontend quality remediation expert who can inspect the public page and safely improve the underlying implementation.
## Inputs
- Primary context: Improve nickradford.dev at https://nickradford.dev.
- Scanner check ID: design_visual_hierarchy.
- Fix title: Strengthen visual hierarchy.
- Scanner check: Visual hierarchy.
- Category: Design.
- Status: fail.
- Severity: medium.
- Priority: 12; lower numbers are more urgent.
- Score impact: 9 of 9 rule points lost.
- Evidence: Detected 1 hierarchy signal(s) from headings, CTA, and emphasized text.
- What needs attention: The page does not expose enough hierarchy signals from headings, emphasis, or CTA structure.
- Why it matters: Hierarchy tells visitors what to read first and what action to take next.
- Status-specific guidance: A public check reported a failure. Reproduce or inspect the issue first, then make the smallest safe fix.
- Audience or recipient: The site owner, builder, or marketing team responsible for improving this public page.
- Constraints, examples, or source material: Treat the live URL as the public target to inspect, not as the only source of truth. When repository, CMS, or hosting access is available, use that implementation context before changing anything.
- Target outcome: After the fix is deployed and the public page is rescanned, this specific check should improve or pass without lowering other SEO / AEO, security, accessibility, or design signals.
- Likely places to inspect: heading scale, section order, CTA prominence, supporting copy, badges, cards, and visual emphasis; page layout, responsive CSS, component states, copy hierarchy, CTA placement, spacing tokens, rendered console output, and performance-sensitive assets; the route, template, component, CMS entry, theme file, or static page that renders the scanned URL; shared layout, metadata, routing, middleware, server, CDN, or hosting configuration if the issue is not in page content; existing tests, build scripts, preview commands, and deployment notes before choosing verification steps.
## Task
Use the provided context to safely complete this workflow: Create a clear H1, supportive section headings, emphasized proof, and one visually prominent primary CTA.
First reproduce or verify the issue from the public page and available implementation source. Then make the smallest stack-appropriate change that fixes the scanner signal and improves the real user experience.
Use this check-specific implementation guide:
- Make the main message, supporting proof, and next action visually distinct.
- Reduce competing emphasis rather than adding decorative clutter.
- Improve the actual rendered page at mobile and desktop sizes, not only the source code shape.
- Preserve core conversion flows while making layout, hierarchy, readability, or runtime health better.
- Keep the implementation stack-appropriate: use the existing framework, CMS, hosting provider, design system, and deployment workflow already in the project.
Acceptance criteria for this fix:
- A visitor can quickly understand what matters most on the page.
- Hierarchy improvements preserve accessibility and responsive behavior.
- The rendered page is visually stable and usable on mobile and desktop viewports.
- The fix does not hide content, break CTAs, introduce console errors, or reduce clarity for visitors.
- A fresh FreeScan rescan should show this check improved or passing after deployment.
## Output
Return a structured response with these headings: Findings, Changes Made, Verification Results, Rescan Expectation, Rollback Notes, Assumptions.
## Rules
- Ask a clarifying question when required context is missing.
- Preserve the user's intent and avoid inventing facts.
- Verify the issue exists before changing code or content. If the issue is not reproducible, explain what you checked and recommend no code change.
- If the live URL and implementation source disagree, trust the implementation source for edits and use the live URL only to understand current public behavior.
- Keep the change narrowly scoped to this fix unless another change is required to avoid a regression.
- Match the existing framework, style, design system, routing patterns, and content conventions.
- Preserve existing URLs, forms, analytics, SEO metadata, accessibility semantics, and conversion flows unless the fix explicitly requires changing them.
- Do not perform broad refactors, dependency upgrades, redesigns, rewrites, migrations, file deletions, route changes, or destructive commands unless they are explicitly required and approved.
- Make changes that are easy to review and roll back.
- Prefer editing the canonical source of the page over patching built output, generated files, CDN-cached HTML, or minified assets.
- Do not make a cosmetic or placeholder change just to satisfy the scanner; the public page should be materially better for visitors, crawlers, or assistive technology.
- Verify the result with the smallest reliable test, build, browser check, or manual inspection available.
## Safety
- Do not request, expose, or reproduce sensitive data.
- Redact private details from examples unless the user explicitly says they are safe to include.
- Do not use credentials, cookies, authenticated data, hidden form values, or private response bodies.
- Do not weaken security headers, authentication, authorization, privacy controls, accessibility, or error handling to make the scan pass.Share preview
nickradford.dev website audit report
Close to ready: 74/100 overall, with prioritized fixes for SEO, security, accessibility, and design.
Public reports expose the scanned public URL, safe scores, sanitized public evidence, and fix guidance. They do not include credentials, cookies, hidden form values, or sensitive response bodies.
