Plan, build, and review one evidence-backed SEO content wave for the Minutes site, including SERP research, page inventory, design-system compliance, internal linking, generated LLM text, and a shipped-wave retro. Use when the user asks for an SEO wave, a group of comparison or use-case pages, a docs or resource hub expansion, or a coordinated batch of search landing pages.
Produce one coherent SEO content wave, not a pile of disconnected pages. Keep the method reusable across comparison pages, use-case or resource pages, and docs hubs.
Competitive research and keyword specifics are time-sensitive. Research them fresh for each wave. Internal competitive plans may exist in gitignored documentation; never invent, reconstruct, or embed those private specifics in this skill or in repository documentation.
Collect:
If theme or keywords are missing, inspect the repository and ask only for the choice that materially changes the wave. Do not invent search volume, keyword difficulty, competitor capabilities, pricing, compliance status, or product claims.
Map the current routes before proposing slugs or outlines:
rg --files site/app | rg '/page\.tsx$'
rg --files site/public | rg '\.md$'
sed -n '1,240p' site/app/sitemap.tsInspect relevant hubs, shared page components, adjacent pages, metadata, structured data, and markdown twins. Record pages that already satisfy the target intent, pages that should be refreshed instead of duplicated, and genuine content gaps.
Research each target query with current search results. Identify:
For competitor, legal, compliance, security, pricing, or product-capability claims, use current primary or official sources and record the review date. Treat search snippets and third-party summaries as discovery aids, not final evidence. For claims about Minutes, verify the current repository implementation and documentation.
Do not copy competitor framing or manufacture a claim because it would make a stronger headline. Give alternatives credit where they are better. Add appropriate not-legal-advice or scope language to regulated-topic pages.
For every proposed page, specify:
Use extractable structures when they serve the query: a direct answer near the top, clear headings, comparison tables, concise lists, and visible FAQs that match any FAQ schema. Avoid near-duplicate pages that merely swap a product name or keyword.
DESIGN.mdRead DESIGN.md and reuse established site components and nearby page patterns. Preserve the Minutes type system: Instrument Serif for display headings, Geist for body and UI, and Geist Mono for labels, evidence, and technical material.
Use the repository's semantic design tokens and established utilities, including var(--bg), var(--text), var(--accent), font-serif, font-sans, and font-mono. Do not introduce raw color values, ad hoc font families, off-scale spacing, gradients, glows, decorative motion, or new arbitrary literals. The design-token CI gate treats new raw literals as failures.
Keep the page useful without JavaScript when practical, keyboard accessible, responsive, and consistent in light and dark modes. Metadata and structured data must describe what the rendered page actually says.
Fact-check every time-sensitive or consequential statement against its recorded source. Then compare Minutes claims against code and first-party documentation. Look especially for absolute language such as "never," "always," "nothing leaves," "compliant," "offline," or "free forever" that may need a precise boundary.
Check dates, plan names, pricing cadence, beta status, platform availability, default versus opt-in behavior, storage and network paths, and legal or compliance qualifiers. Remove a claim when it cannot be verified.
Connect the wave as a cluster:
site/app/sitemap.tssite/public/**/*.md page when the site pattern requires a markdown twinUse descriptive anchor text. Do not stuff exact-match keywords into every link.
After page and inventory changes, regenerate the LLM-facing site text:
node scripts/generate_llms_txt.mjs
node scripts/generate_llms_txt.mjs --checkRun the relevant site tests, type checks, and repository gates for the touched files. At minimum, run the design-token check when site UI changed:
node scripts/check_design_tokens.mjsDo not hand-edit generated llms.txt files. Fix their source or generator input and regenerate.
Return a page checklist followed by the shipped-wave retro. Keep routes, keywords, evidence, integrations, and validation visible:
## Wave: <theme>
### Page checklist
- [ ] `/route-one` | `<primary keyword>` | <intent>
- Direct answer and distinct angle: <one line>
- Evidence: <primary sources or first-party repository evidence>
- Integrations: <hub, sibling, sitemap, markdown twin, CTA>
- [ ] `/route-two` | `<primary keyword>` | <intent>
- Direct answer and distinct angle: <one line>
- Evidence: <primary sources or first-party repository evidence>
- Integrations: <hub, sibling, sitemap, markdown twin, CTA>
### Wave checklist
- [ ] Existing `site/app/` and `site/public/` inventory checked for overlap.
- [ ] SERP intent and primary evidence recorded with a review date.
- [ ] `DESIGN.md`, accessibility, metadata, and structured-data constraints met.
- [ ] Hub, sibling, pillar, conversion, sitemap, and markdown-twin links complete.
- [ ] LLM text regenerated and repository checks pass.
## Shipped-wave retro
- **Scope shipped:** <routes and page types>
- **Why this wave:** <shared intent and evidence-backed opportunity>
- **Evidence and honesty review:** <sources checked, claims corrected or dropped, review date>
- **Site integration:** <hubs, internal links, sitemap, markdown twins, generated LLM text>
- **Validation:** <commands and results>
- **Follow-up:** <measurement or unresolved work, without inventing rankings or traffic>Mark items complete only when the repository contains the work and the validation ran. The retro should follow the #435 through #438 pattern: summarize the shipped routes, the research basis, the integration work, the adversarial or honesty review, and concrete corrections. Do not claim ranking, traffic, or conversion impact before measurement exists.
Before calling the wave complete, verify:
site/app/ routes, hubs, sitemap entries, and markdown twins were inventoried.DESIGN.md tokens and fonts are reused with no new raw design literals.site/app/sitemap.ts and required site/public/**/*.md twins are updated.node scripts/generate_llms_txt.mjs --check passes after regeneration.node scripts/check_design_tokens.mjs pass.7a61dd5
Also appears in
since Jul 28, 2026
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.