optbrew 0.0.0-stage → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +6 -0
- package/.claude-plugin/plugin.json +6 -0
- package/.codex-plugin/plugin.json +13 -0
- package/CHANGELOG.md +50 -0
- package/LICENSE +21 -0
- package/README.ko.md +149 -0
- package/README.md +148 -2
- package/THIRD_PARTY_NOTICES.md +10 -0
- package/bin/optbrew.mjs +4 -0
- package/docs/platforms.md +107 -0
- package/docs/release.md +14 -0
- package/lib/cli.mjs +116 -0
- package/lib/doctor.mjs +45 -0
- package/lib/install.mjs +158 -0
- package/lib/paths.mjs +30 -0
- package/lib/records.mjs +44 -0
- package/lib/reinstall.mjs +92 -0
- package/lib/transaction.mjs +205 -0
- package/lib/update.mjs +189 -0
- package/package.json +39 -4
- package/plugin.json +13 -0
- package/skills/optbrew/LICENSE +21 -0
- package/skills/optbrew/SKILL.md +17 -0
- package/skills/optbrew/THIRD_PARTY_NOTICES.md +10 -0
- package/skills/optbrew/agents/openai.yaml +4 -0
- package/skills/optbrew/bundle-manifest.json +687 -0
- package/skills/optbrew/licenses/firecrawl-seo-audit.txt +15 -0
- package/skills/optbrew/licenses/magnus-seo.txt +21 -0
- package/skills/optbrew/licenses/marketing-search.txt +21 -0
- package/skills/optbrew/licenses/mblode-seo.txt +21 -0
- package/skills/optbrew/licenses/naver-searchadvisor.txt +29 -0
- package/skills/optbrew/licenses/seranking-seo.txt +21 -0
- package/skills/optbrew/modules/firecrawl-seo-audit/GUIDE.md +64 -0
- package/skills/optbrew/modules/magnus-seo/GUIDE.md +79 -0
- package/skills/optbrew/modules/magnus-seo/README.md +45 -0
- package/skills/optbrew/modules/magnus-seo/assets/audit-report-template.md +76 -0
- package/skills/optbrew/modules/magnus-seo/references/aeo-methodology.md +105 -0
- package/skills/optbrew/modules/magnus-seo/references/agent-readable-content.md +28 -0
- package/skills/optbrew/modules/magnus-seo/references/content-and-entity-architecture.md +100 -0
- package/skills/optbrew/modules/magnus-seo/references/content-strategy-seo.md +142 -0
- package/skills/optbrew/modules/magnus-seo/references/discovery-and-freshness.md +47 -0
- package/skills/optbrew/modules/magnus-seo/references/evidence-boundaries.md +75 -0
- package/skills/optbrew/modules/magnus-seo/references/ghost-metadata.md +204 -0
- package/skills/optbrew/modules/magnus-seo/references/implementation-playbook.md +114 -0
- package/skills/optbrew/modules/magnus-seo/references/measurement-and-experimentation.md +47 -0
- package/skills/optbrew/modules/magnus-seo/references/onpage-seo.md +154 -0
- package/skills/optbrew/modules/magnus-seo/references/platform-guidance.md +30 -0
- package/skills/optbrew/modules/magnus-seo/references/schema-markup.md +244 -0
- package/skills/optbrew/modules/magnus-seo/references/source-index.md +36 -0
- package/skills/optbrew/modules/magnus-seo/references/structured-data.md +56 -0
- package/skills/optbrew/modules/magnus-seo/references/technical-seo.md +99 -0
- package/skills/optbrew/modules/magnus-seo/scripts/aeo_audit.py +158 -0
- package/skills/optbrew/modules/magnus-seo/scripts/build_prompt_matrix.py +52 -0
- package/skills/optbrew/modules/magnus-seo/templates/aeo-implementation-plan.md +53 -0
- package/skills/optbrew/modules/magnus-seo/templates/citation-observation-log.md +16 -0
- package/skills/optbrew/modules/magnus-seo/templates/llms.txt.template +15 -0
- package/skills/optbrew/modules/magnus-seo/templates/question-cluster.md +27 -0
- package/skills/optbrew/modules/magnus-seo/templates/robots-ai-crawlers.txt +23 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/GUIDE.md +483 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/agent-readiness.md +57 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/citations-vs-recommendations.md +85 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/content-patterns.md +287 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/content-types.md +71 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/format-volatility.md +98 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/okf.md +104 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/platform-ranking-factors.md +154 -0
- package/skills/optbrew/modules/marketing-search/skills/ai-seo/references/youtube-ai-citations.md +60 -0
- package/skills/optbrew/modules/marketing-search/skills/analytics/GUIDE.md +303 -0
- package/skills/optbrew/modules/marketing-search/skills/analytics/references/event-library.md +260 -0
- package/skills/optbrew/modules/marketing-search/skills/analytics/references/ga4-implementation.md +300 -0
- package/skills/optbrew/modules/marketing-search/skills/analytics/references/gtm-implementation.md +390 -0
- package/skills/optbrew/modules/marketing-search/skills/content-strategy/GUIDE.md +432 -0
- package/skills/optbrew/modules/marketing-search/skills/content-strategy/references/content-distribution.md +83 -0
- package/skills/optbrew/modules/marketing-search/skills/content-strategy/references/headless-cms.md +194 -0
- package/skills/optbrew/modules/marketing-search/skills/programmatic-seo/GUIDE.md +231 -0
- package/skills/optbrew/modules/marketing-search/skills/programmatic-seo/references/playbooks.md +308 -0
- package/skills/optbrew/modules/marketing-search/skills/schema/GUIDE.md +172 -0
- package/skills/optbrew/modules/marketing-search/skills/schema/references/schema-examples.md +398 -0
- package/skills/optbrew/modules/marketing-search/skills/seo-audit/GUIDE.md +492 -0
- package/skills/optbrew/modules/marketing-search/skills/seo-audit/references/ai-writing-detection.md +200 -0
- package/skills/optbrew/modules/marketing-search/skills/seo-audit/references/international-seo.md +230 -0
- package/skills/optbrew/modules/marketing-search/skills/site-architecture/GUIDE.md +350 -0
- package/skills/optbrew/modules/marketing-search/skills/site-architecture/references/mermaid-templates.md +216 -0
- package/skills/optbrew/modules/marketing-search/skills/site-architecture/references/navigation-patterns.md +305 -0
- package/skills/optbrew/modules/marketing-search/skills/site-architecture/references/site-type-templates.md +293 -0
- package/skills/optbrew/modules/mblode-seo/GUIDE.md +74 -0
- package/skills/optbrew/modules/mblode-seo/references/answer-engines.md +58 -0
- package/skills/optbrew/modules/mblode-seo/references/audit.md +78 -0
- package/skills/optbrew/modules/mblode-seo/references/brief-template.md +47 -0
- package/skills/optbrew/modules/mblode-seo/references/monitoring.md +56 -0
- package/skills/optbrew/modules/mblode-seo/references/nextjs-implementation.md +65 -0
- package/skills/optbrew/modules/mblode-seo/references/research-protocol.md +37 -0
- package/skills/optbrew/modules/mblode-seo/references/sources.md +47 -0
- package/skills/optbrew/modules/mblode-seo/references/validation-evidence.md +21 -0
- package/skills/optbrew/modules/naver-searchadvisor/GUIDE.md +75 -0
- package/skills/optbrew/modules/naver-searchadvisor/NOTICE.md +59 -0
- package/skills/optbrew/modules/naver-searchadvisor/references/INDEX.md +97 -0
- package/skills/optbrew/modules/naver-searchadvisor/scripts/audit.mjs +742 -0
- package/skills/optbrew/modules/naver-searchadvisor/scripts/robots.mjs +77 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-ai-search-share-of-voice/GUIDE.md +94 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-api/GUIDE.md +186 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-api/references/api-surface-map.md +207 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-api/references/auth-and-keys.md +182 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-api/references/integration-patterns.md +283 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-api/references/rate-limits-and-credits.md +235 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-competitor-gap-analysis/GUIDE.md +117 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-content-audit/GUIDE.md +155 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-content-audit/references/cite.md +84 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-content-audit/references/core-eeat.md +147 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-content-audit/templates/verdict.md +63 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-firecrawl/GUIDE.md +141 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-firecrawl/references/preflight.md +73 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-geo/GUIDE.md +159 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/GUIDE.md +393 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/assets/templates/cwv-audit-report.md +48 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/assets/templates/gsc-performance-report.md +44 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/assets/templates/indexation-status-report.md +43 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/auth-setup.md +160 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/cross-skill-integration.md +187 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/ga4-data-api.md +184 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/indexing-api.md +109 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/keyword-planner-api.md +66 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/nlp-api.md +55 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/pagespeed-crux-api.md +204 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/rate-limits-quotas.md +75 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/search-console-api.md +156 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/supplementary-apis.md +99 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-google/references/youtube-api.md +49 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-keyword-niche/GUIDE.md +174 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-page/GUIDE.md +174 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-plan/GUIDE.md +220 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/GUIDE.md +135 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/references/google-rich-results.md +89 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/templates/article.json +23 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/templates/breadcrumb-list.json +18 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/templates/faq-page.json +22 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/templates/local-business.json +32 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-schema/templates/product.json +25 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-sitemap/GUIDE.md +128 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-technical-audit/GUIDE.md +235 -0
- package/skills/optbrew/modules/seranking-seo/skills/seo-technical-audit/references/severity-mapping.md +133 -0
- package/skills/optbrew/references/ai-crawlers.json +21 -0
- package/skills/optbrew/references/ai-crawlers.md +24 -0
- package/skills/optbrew/references/api.md +45 -0
- package/skills/optbrew/references/check-registry.json +28 -0
- package/skills/optbrew/references/evidence.md +9 -0
- package/skills/optbrew/references/intake.md +9 -0
- package/skills/optbrew/references/measurement.md +29 -0
- package/skills/optbrew/references/policies.md +7 -0
- package/skills/optbrew/references/profiles.json +13 -0
- package/skills/optbrew/references/remediations.json +12 -0
- package/skills/optbrew/references/report.md +29 -0
- package/skills/optbrew/references/routing.md +15 -0
- package/skills/optbrew/references/schemas/contract.schema.json +51 -0
- package/skills/optbrew/references/scoring.md +62 -0
- package/skills/optbrew/scripts/adapters/anthropic.mjs +116 -0
- package/skills/optbrew/scripts/adapters/imports.mjs +81 -0
- package/skills/optbrew/scripts/audit.mjs +124 -0
- package/skills/optbrew/scripts/cli.mjs +41 -0
- package/skills/optbrew/scripts/core/bootstrap.mjs +31 -0
- package/skills/optbrew/scripts/core/bundle.mjs +73 -0
- package/skills/optbrew/scripts/core/capabilities.mjs +19 -0
- package/skills/optbrew/scripts/core/collector.mjs +250 -0
- package/skills/optbrew/scripts/core/compare.mjs +47 -0
- package/skills/optbrew/scripts/core/contracts.mjs +144 -0
- package/skills/optbrew/scripts/core/cost-ledger.mjs +95 -0
- package/skills/optbrew/scripts/core/crawlers.mjs +11 -0
- package/skills/optbrew/scripts/core/derive.mjs +168 -0
- package/skills/optbrew/scripts/core/facts.mjs +189 -0
- package/skills/optbrew/scripts/core/findings.mjs +54 -0
- package/skills/optbrew/scripts/core/html.mjs +53 -0
- package/skills/optbrew/scripts/core/metrics.mjs +97 -0
- package/skills/optbrew/scripts/core/protocol.mjs +125 -0
- package/skills/optbrew/scripts/core/report.mjs +742 -0
- package/skills/optbrew/scripts/core/scope.mjs +52 -0
- package/skills/optbrew/scripts/core/score.mjs +71 -0
- package/skills/optbrew/scripts/core/weights.mjs +139 -0
- package/skills/optbrew/source-lock.json +2686 -0
- package/source-lock.json +2686 -0
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Next.js Implementation
|
|
2
|
+
|
|
3
|
+
Read the installed version's documentation under `node_modules/next/dist/docs` (possibly at the workspace root) before changing APIs. The checks below name observed failure modes; they are not a permanent version compatibility table.
|
|
4
|
+
|
|
5
|
+
## Metadata
|
|
6
|
+
|
|
7
|
+
- Set `metadataBase` for the production origin and emit the page's preferred canonical. Verify basePath behavior in a production build, especially generated versus static Open Graph images.
|
|
8
|
+
- Preserve DNS ownership verification. Use `metadata.verification` only for a supplied token and the selected verification method.
|
|
9
|
+
- Choose descriptive titles and descriptions for the page purpose. Check truncation and redundancy as presentation concerns, not fixed 50/60/44-character validity gates. Title templates apply to child routes; inspect the resolved title and social title separately.
|
|
10
|
+
- Nested metadata objects such as `openGraph` can replace parent values rather than deep-merge. Restate or share the fields that should survive. Avoid an inherited homepage `openGraph.url` on every route.
|
|
11
|
+
- Set preview controls deliberately. `max-image-preview:large` permits larger previews; `max-snippet:-1` permits unrestricted snippet length. These are permission controls, not ranking boosts or guaranteed excerpt lengths. Preserve intentional restrictions and check current engine controls.
|
|
12
|
+
- Use author/entity attribution where it describes the content. A person, product, organization and website are distinct entities; `sameAs` identifies the same entity, not every associated organization.
|
|
13
|
+
|
|
14
|
+
## Sitemaps and rendering
|
|
15
|
+
|
|
16
|
+
Implement sitemaps from the authoritative public route inventory. Use content modification dates or omit them; availability-gated pages must follow the same gate as their routes. Fetch emitted XML and its URLs after building.
|
|
17
|
+
|
|
18
|
+
A generated sitemap collection may need an explicit index or discovery entries. Verify the installed version's `generateSitemaps` parameters and output paths instead of reconstructing them from memory. Sitemap caches and upstream CDNs can outlive the app deploy; verify the public response.
|
|
19
|
+
|
|
20
|
+
Server-render the principal text and navigational anchors on indexable hubs and detail pages. Client Components can prerender; mounting guards, viewport-dependent state and effect-only fetching can still remove the useful initial HTML. Keep a useful visible fallback for readers without JavaScript and enhance it after hydration. Verify the visual transition, not just raw text counts.
|
|
21
|
+
|
|
22
|
+
Cache Components changes available route configuration and caching APIs. Verify support before adding `dynamic`, `revalidate` or `fetchCache` exports. Choose content-aware invalidation and account for CDN caching separately.
|
|
23
|
+
|
|
24
|
+
## Status codes and redirects
|
|
25
|
+
|
|
26
|
+
A `notFound()` or redirect after streaming starts may produce a 200 shell with metadata or a client redirect. For routes that require a true 404 or 3xx, validate existence or redirect before streaming using a supported routing boundary. Test the actual status with an invented path and a migrated URL.
|
|
27
|
+
|
|
28
|
+
Redirect specificity and basePath prefixing affect matching. Check bare roots, trailing slashes, query strings and Markdown twins. Preserve legitimate deep paths, avoid loops, and verify the final destination's status and canonical.
|
|
29
|
+
|
|
30
|
+
For Next versions that use `proxy.ts`, use the documented exported handler, runtime and matcher format. Check the compiled behavior for exact versus descendant matches. Do not migrate unrelated middleware solely because an SEO file changed.
|
|
31
|
+
|
|
32
|
+
## Markdown twins and llms.txt
|
|
33
|
+
|
|
34
|
+
Inspect existing `llms.txt` and `*.md` handlers before adding another. Typical App Router shape: a route handler or `proxy.ts` rewrite that serves the markdown source at the HTML path with `.md` appended (directory URLs use `index.md`). On `Accept: text/markdown`, return that body with `Content-Type: text/markdown; charset=utf-8` and `Vary: Accept`; HTML Accept stays on the existing page. Confirm the matcher does not exclude `.md` or `llms.txt`.
|
|
35
|
+
|
|
36
|
+
Honor Accept `q=0` and verify CDN `Vary` on both representations, as in `answer-engines.md`. AFDocs pass/fail for `llms.txt` shape, in-page directives, and coverage is `agent-ready`, not this file.
|
|
37
|
+
|
|
38
|
+
## Structured data
|
|
39
|
+
|
|
40
|
+
Use types appropriate to the visible page and current supported search features. Stable `@id` references can connect entities across consistent JSON-LD blocks; one `@graph` is an optional organization convention. Script count alone is not an error.
|
|
41
|
+
|
|
42
|
+
Derive markup from the same data as the rendered content. Check claims, links, dates, prices, reviews and author identities against what the page actually provides. Some schema properties need no literal visible label; the underlying claim still needs to be accurate and supported. Validate rich-result eligibility separately from JSON syntax and schema vocabulary validity.
|
|
43
|
+
|
|
44
|
+
Escape `<` when embedding serialized JSON-LD in a script:
|
|
45
|
+
|
|
46
|
+
```tsx
|
|
47
|
+
<script
|
|
48
|
+
type="application/ld+json"
|
|
49
|
+
dangerouslySetInnerHTML={{
|
|
50
|
+
__html: JSON.stringify(data).replaceAll('<', '\\u003c'),
|
|
51
|
+
}}
|
|
52
|
+
/>
|
|
53
|
+
```
|
|
54
|
+
|
|
55
|
+
Check the current feature documentation before promising FAQ, Article, Product or other rich results. A schema.org type can remain valid after a Google presentation feature is retired.
|
|
56
|
+
|
|
57
|
+
## Images, headers and performance
|
|
58
|
+
|
|
59
|
+
Read generated social image URLs from the built output and fetch them. Do not infer extensions, host or basePath resolution from filenames. A declared OG URL whose response is HTML or 404 is a defect.
|
|
60
|
+
|
|
61
|
+
Metadata may stream for one user agent and block in the head for another. Exercise the framework's HTML-limited bot path as well as browser/Google-style requests, especially for pages that read build-only filesystem assets. Verify server behavior, not a grep that counts escaped RSC metadata twice.
|
|
62
|
+
|
|
63
|
+
A nonce CSP may require dynamic rendering and reduce caching. Do not add it solely to silence an SEO scanner. CORP is a browser response policy, not proof that a server-side social scraper cannot fetch an image. Diagnose the real request, MIME type and delivery failure.
|
|
64
|
+
|
|
65
|
+
Keep the LCP resource discoverable early, reserve layout space and measure interaction delays. Use supported image priority/loading APIs for the installed version. Field measurements and lab diagnostics belong in separate evidence columns.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Research Protocol
|
|
2
|
+
|
|
3
|
+
Produce a decision about demand and product fit, not a table of plausible numbers. Use supplied exports as supplied evidence; for a request for fresh research, pull current data or label the access/freshness gap.
|
|
4
|
+
|
|
5
|
+
## Demand and intent
|
|
6
|
+
|
|
7
|
+
Confirm the audience, product capability and outcome before selecting queries. Keep the promoted product distinct from a competitor named in a query: a Windows-capable alternative can legitimately target demand for a competitor that has no Windows app. Missing comparison details become verification items in the brief, not an invented contradiction. Inspect the actual results and existing site coverage to distinguish definitions, comparisons, implementation and purchase intent. Add a modifier when it disambiguates; do not force one onto an already-specific query or declare every broad noun unwinnable.
|
|
8
|
+
|
|
9
|
+
Default to global scope unless the request or established market specifies a country. Preserve a tool's actual scope; an Australian figure is not global. Record the reported time window and pull date, including whether volume is a monthly average or a particular month.
|
|
10
|
+
|
|
11
|
+
Query the primary and relevant secondary terms in the connected keyword tool. Use property-scoped Search Console queries, public discussions, support/sales evidence and product usage as additional demand signals. Lack of vendor volume for a niche term is not proof of no demand. Prefer improving an existing relevant page over creating a competing one.
|
|
12
|
+
|
|
13
|
+
## Prompt metrics
|
|
14
|
+
|
|
15
|
+
House reporting uses the vendor's **Exact** prompt match figure. Match definitions vary by vendor; record the definition, engine, locale, sampling/estimation method and date window where available. Do not define Phrase or Exact universally by word order, or substitute keyword volume for prompt demand.
|
|
16
|
+
|
|
17
|
+
When Exact is absent, report `No data (Exact unavailable)` rather than substituting Phrase, broad or a related prompt. A Phrase figure may be separately labeled as context, never placed in the Exact column. Distinguish a measured zero from missing data. Vendor-estimated demand and repeated prompt-panel visibility are separate measurements.
|
|
18
|
+
|
|
19
|
+
## Evidence table
|
|
20
|
+
|
|
21
|
+
| Query or prompt | Metric and value | Source and match definition | Scope/engine | Window and pull date |
|
|
22
|
+
|---|---|---|---|---|
|
|
23
|
+
| <actual term> | <keyword volume, Exact prompt volume, or No data with reason> | <tool/export and metric definition> | <country/global, engine where applicable> | <reported window; retrieved date> |
|
|
24
|
+
|
|
25
|
+
Do not merge unlike populations into one metric or fill blanks from memory. If sources disagree, preserve both scopes and reconcile definitions before selecting an authoritative number. Historical exports can inform context when labeled; they are not a current pull.
|
|
26
|
+
|
|
27
|
+
## Question map and decision
|
|
28
|
+
|
|
29
|
+
Use natural evaluator questions: what it is, when to use it, alternatives, implementation, evidence and limitations. Mark questions already covered and identify material gaps. Hypothesized fan-out queries are brainstorming, not observed engine behavior; do not manufacture separate pages for every wording.
|
|
30
|
+
|
|
31
|
+
Mine questions from where buyers ask them in their own words: support and sales threads, community forums and Reddit, review sites and competitor help centres. Record each question with its source URL or ticket reference and date, so the brief can cite provenance; a question with no source is a hypothesis.
|
|
32
|
+
|
|
33
|
+
Before recommending `create`, run the gap check for the target query or prompt. Read the current top organic results and, where the page targets AI search, a repeated prompt panel per engine. Record who is cited and two or three specific things the current answers miss or get wrong: an unanswered evaluator question, stale product facts, no first-hand evidence, no honest limitation. The gap must be something the site can actually supply. No named gap means no new page: recommend `update`, `consolidate` or `defer` instead, and say so.
|
|
34
|
+
|
|
35
|
+
Recommend create, update, consolidate, defer or validate based on demand evidence, attainable intent, differentiated value and the conversion path. State confidence and the next evidence needed. Quantitative evidence can be `No data`; a small validation may still be justified by explicit qualitative evidence.
|
|
36
|
+
|
|
37
|
+
Treat vendor correlation studies as dated, sample-dependent research. Preserve engine, sample selection and non-causal limitations. Branded searches, independent mentions and videos can be tracked where useful, but none is a universal strongest predictor or a guaranteed lever.
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
# Sources and Freshness
|
|
2
|
+
|
|
3
|
+
This registry was checked on 2026-09-08; the research table was added on 2026-09-23. Treat the date as provenance, not a promise that vendor behavior remains unchanged. Reopen the relevant official page when deciding a volatile feature, API, policy or reporting capability. Record the source and access date beside consequential claims.
|
|
4
|
+
|
|
5
|
+
## Primary guidance
|
|
6
|
+
|
|
7
|
+
| Topic | Source |
|
|
8
|
+
|---|---|
|
|
9
|
+
| Google AI search foundations, formatting myths and measurement | https://developers.google.com/search/docs/fundamentals/ai-optimization-guide |
|
|
10
|
+
| Google generative AI report availability and dimensions | https://developers.google.com/search/blog/2026/06/gen-ai-performance-reports |
|
|
11
|
+
| Bing AI reporting | https://blogs.bing.com/webmaster/February-2026/Introducing-AI-Performance-in-Bing-Webmaster-Tools-Public-Preview |
|
|
12
|
+
| OpenAI search versus training and crawler identity | https://developers.openai.com/api/docs/bots |
|
|
13
|
+
| Anthropic crawlers | https://support.claude.com/en/articles/8896518-does-anthropic-crawl-data-from-the-web-and-how-can-site-owners-block-the-crawler |
|
|
14
|
+
| Google robots and preview directives | https://developers.google.com/search/docs/crawling-indexing/robots-meta-tag |
|
|
15
|
+
| Sitemaps and meaningful lastmod | https://developers.google.com/search/docs/crawling-indexing/sitemaps/build-sitemap |
|
|
16
|
+
| Canonical consolidation | https://developers.google.com/search/docs/crawling-indexing/consolidate-duplicate-urls |
|
|
17
|
+
| Localized versions and optional x-default | https://developers.google.com/search/docs/specialty/international/localized-versions |
|
|
18
|
+
| Structured-data eligibility | https://developers.google.com/search/docs/appearance/structured-data/sd-policies |
|
|
19
|
+
| Scaled content abuse and other spam policies | https://developers.google.com/search/docs/essentials/spam-policies |
|
|
20
|
+
| Core Web Vitals | https://web.dev/articles/vitals |
|
|
21
|
+
| Next.js implementation | Installed `next/dist/docs` first; https://nextjs.org/docs/app as fallback |
|
|
22
|
+
|
|
23
|
+
## Research, not ranking contracts
|
|
24
|
+
|
|
25
|
+
https://ahrefs.com/blog/ai-brand-visibility-correlations/ reports associations from a selected established-brand population, not causal effects or universal coefficients. Use the study's current methodology, engine and sample restrictions rather than copying an undated strongest-predictor claim into instructions.
|
|
26
|
+
|
|
27
|
+
"GEO" as a term comes from Aggarwal et al., "GEO: Generative Engine Optimization", KDD 2024 (https://arxiv.org/abs/2311.09735). Its visibility gains were measured on a benchmark and on Perplexity in 2023; cite it for the definition, not as current evidence that a given tactic works.
|
|
28
|
+
|
|
29
|
+
Distinguish official engine guidance, vendor observational research, a site-specific experiment and house preferences. Official Google guidance describes Google Search and its AI features, not ChatGPT, Claude, Perplexity or other AI search engines. An industry study can motivate a test; it cannot establish that a specific action will improve this site's visibility.
|
|
30
|
+
|
|
31
|
+
## Dated research
|
|
32
|
+
|
|
33
|
+
These figures reached this registry through Man of Many's 2026 Guide to GEO (21 September 2026), a publisher's compilation that prints the publisher, sample and date for each and has a stated commercial interest in third-party editorial. Primaries were not reopened. Open the primary before quoting a figure, and use them to frame a test or a budget conversation, never as a promised effect for one site.
|
|
34
|
+
|
|
35
|
+
| Finding | Source, sample, date | Limit |
|
|
36
|
+
|---|---|---|
|
|
37
|
+
| 85% of brand mentions in AI answers came from third-party pages, 13.2% from the brand's domain; nearly 90% of third-party mentions were in listicles, comparisons and reviews | AirOps, 21,311 mentions, October 2025 | Mention share, not citation or traffic |
|
|
38
|
+
| Adding schema to 1,885 pages was followed by a 4.6% fall in AI Overview citations | Ahrefs, 11 May 2026 | One engine; schema still serves rich results and entity identity |
|
|
39
|
+
| No relationship between `llms.txt` and AI citations | SE Ranking, about 300,000 domains, 7 November 2025 | Says nothing about coding agents that do read it |
|
|
40
|
+
| 54% of sites that scaled AI-generated content lost 30% or more of peak traffic | Lily Ray, Amsive, 220+ sites, 13 May 2026 | Selected sites |
|
|
41
|
+
| Nearly 65% of AI citations pointed to content from the previous year; news articles persisted in citations 1.4% of the time | Seer Interactive, June 2025; SISTRIX AI Citation Drift, 2026 | Freshness means real updates, not restamped dates |
|
|
42
|
+
| Removing the AI Overview produced 68% more organic clicks per search; 7.1% of clicks on an AIO page came from its citations | Agarwal and Sen, randomised, 1,065 US desktop users, 2026 (SSRN 6513059) | Desktop, US, reported via Digital Content Next |
|
|
43
|
+
| The same prompt returned the same brand list less than once in 100 runs; weekly cited-source turnover of 56% (AI Mode) and 74% (ChatGPT) | SparkToro with Gumshoe, 2026; SISTRIX, 82,619 prompts, 2026 | Why prompt panels need repetitions. Do not cite AirOps' "2.2%" for this: it is the share of cited URLs shared by all three engines for one prompt, not run-to-run stability |
|
|
44
|
+
| The same prompt rarely returned the same brand list twice | SparkToro, 2,961 queries from 600 volunteers, 28 January 2026 | Why a single visibility score misleads |
|
|
45
|
+
| Brand search volume was the strongest tested predictor of AI brand mentions, at a correlation of about 0.33 | Kevin Indig, Growth Memo, 75,000 brands, 4 May 2026 | Strongest, not strong; correlational |
|
|
46
|
+
| Retrieval snippet test for whether an assistant can retrieve a page | Myriam Jessier and Chris Green, September 2026 | Proves retrievability, not trust or citation |
|
|
47
|
+
| Scraper-based rank and AI-visibility tools lost collection from mid-September 2026 | Search Engine Roundtable, 18 September 2026 | Unconfirmed by Google; may ease |
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Validation Evidence
|
|
2
|
+
|
|
3
|
+
Choose probes for the changed behavior, not a fixed command quota. Record commands, timestamp, exact requested/final URLs, environment/build identity and relevant results. Preserve unrelated processes and edits; use an available port owned by this task for local serving.
|
|
4
|
+
|
|
5
|
+
## Built-page checks
|
|
6
|
+
|
|
7
|
+
1. Run the repository's applicable lint/type/build checks. Use a production build when metadata, static generation or prerendering is involved.
|
|
8
|
+
2. Fetch the actual HTML response and parse title, canonical, meta/header directives, headings, anchors and JSON-LD. Do not count SVG titles, escaped payloads or script string matches as HTML elements.
|
|
9
|
+
3. For rendering changes, compare raw HTML with the browser DOM and inspect the visual result with and without JavaScript. Check the affected route pattern, a detail route and a missing path.
|
|
10
|
+
4. For sitemap changes, parse emitted XML, verify advertised URLs and compare lastmod to the content source. For redirects, inspect the complete chain and terminal status/canonical.
|
|
11
|
+
5. For AI access, probe relevant user-agent paths, then distinguish those results from authenticated crawler logs or engine URL inspection. For content negotiation, test both representations and cache request orders.
|
|
12
|
+
6. For AI retrievability, copy a unique 20 to 30 word sentence from the live page and, in a clean session per assistant, ask each relevant engine to search for that exact text and return only matching results. A returned URL proves that engine can retrieve the page, not that it will cite it; a miss points to indexing, robots, CDN/WAF challenges or crawlability before copy.
|
|
13
|
+
7. Check JSON-LD syntax, entity consistency and current rich-result eligibility separately. Multiple consistent blocks are valid; DNS ownership does not require a duplicate meta token.
|
|
14
|
+
|
|
15
|
+
## Completion evidence
|
|
16
|
+
|
|
17
|
+
Report each applicable check as passed, failed, not applicable or not measured. A local pass supports local behavior only. After an authorized deployment, wait for readiness, verify deployment identity and repeat the material probes through the real public host/CDN. A deployed source change with an unchanged cached public response remains unverified.
|
|
18
|
+
|
|
19
|
+
Use Search Console/Bing inspection where available for engine-observed indexing. State `No data` if unavailable; neither sitemap submission nor a crawler 200 response establishes index inclusion.
|
|
20
|
+
|
|
21
|
+
Report field Core Web Vitals independently of lab diagnostics. Verify current thresholds when assessing performance; conventional good thresholds are LCP <=2.5s, INP <=200ms and CLS <=0.1 at the 75th percentile. Specify URL/origin aggregation, device and date window. Missing field data is not a pass.
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
> **optbrew policy correction (2026-10-14):** This distribution note takes precedence over conflicting upstream recommendations below. `llms.txt` is an optional proposal, and RSL or training-bot access is a separate provider and rights decision. Their presence, as well as schema presence, is not measured citation improvement. An actual AI citation requires provider output and source evidence. A `site:` query is not complete indexing proof; IndexNow is a discovery notification, not indexing confirmation. Naver `nosourceinfo` concerns its AI-generated source description setting only; do not infer a general citation or indexing effect. Verify the current official policy before applying any provider-specific claim. Do not submit URLs or change crawler controls from this guide without separate authority.
|
|
2
|
+
|
|
3
|
+
# Naver Search Advisor source guide
|
|
4
|
+
|
|
5
|
+
Adapted from the pinned upstream SKILL.md. Naver's 55 article bodies are excluded because their copyright is outside the upstream MIT license. The source routing tables below identify topics only. Find each document in [the official document index](references/INDEX.md) and read its current official URL before using a policy or numeric claim. If the page cannot be read, mark that claim unknown. A site: search is not complete indexing proof; IndexNow is a notification, not confirmed indexing. The local audit script gathers evidence only and must not submit to Naver.
|
|
6
|
+
|
|
7
|
+
The upstream instructions to read local article bodies, search those bodies, or fetch them into this package do not apply to optbrew.
|
|
8
|
+
|
|
9
|
+
## Optbrew audit input
|
|
10
|
+
|
|
11
|
+
Run `node skills/optbrew/scripts/audit.mjs --context <run-context.json> --modules naver-searchadvisor --output-dir <run-dir>`. The optbrew collector checks the declared origin, path and resolved IP at each redirect. This module reads only collector-preserved HTML, response headers and any in-scope robots.txt artifact. Its original direct URL CLI is disabled. A Yeti User-Agent response, when supplied, is a bot-specific response observation; it does not prove that a Naver bot visited the site. Module warnings are evidence to review, not automatic optbrew score deductions.
|
|
12
|
+
|
|
13
|
+
## 라우팅 표 — 요청 → 읽을 문서
|
|
14
|
+
|
|
15
|
+
| 사용자가 이런 걸 물으면 | 읽을 파일 (`official URLs in references/INDEX.md`) |
|
|
16
|
+
|---|---|
|
|
17
|
+
| 네이버 SEO 처음 시작, 뭐부터? | `01-seo-basic-intro.md`, `12-seo-help.md` |
|
|
18
|
+
| 사이트 등록, 소유확인 | `55-faq-start-register.md` |
|
|
19
|
+
| robots.txt 작성·응답코드·Yeti 허용 | `03-seo-basic-robots.md` |
|
|
20
|
+
| 검색로봇 IP 확인, 방화벽에 막힘 | `07-seo-basic-firewall.md` |
|
|
21
|
+
| 리다이렉트, URL 변경, 사이트 이전 | `04-seo-basic-redirect.md`, `05-seo-basic-migration.md` |
|
|
22
|
+
| HTTP 상태코드 해석 | `08-seo-basic-http.md` |
|
|
23
|
+
| 사이트 폐쇄·종료 절차 | `06-seo-basic-close.md` |
|
|
24
|
+
| SPA/React/Vue가 색인 안 됨 | `09-seo-advanced-javascript.md` |
|
|
25
|
+
| URL 구조 설계 | `10-seo-advanced-url.md` |
|
|
26
|
+
| 색인 효율, 크롤 예산 | `11-seo-advanced-indexing.md` |
|
|
27
|
+
| CSS/JS/이미지 리소스 차단 문제 | `13-resource-and-link.md` |
|
|
28
|
+
| 스팸으로 분류될까? 페널티 사유 | `14-content-abusing.md` |
|
|
29
|
+
| 콘텐츠 어떻게 써야 하나, AI 글 써도 되나 | `15-content-basic.md` |
|
|
30
|
+
| canonical, noindex, nofollow, nosourceinfo | `16-markup-structure.md` |
|
|
31
|
+
| title, description, 오픈그래프, og:image 규격 | `17-markup-content.md` |
|
|
32
|
+
| 모바일 대응, viewport | `18-markup-mobile.md` |
|
|
33
|
+
| 파비콘이 검색결과에 안 나옴 | `19-markup-favicon.md` |
|
|
34
|
+
| 수집요청, 검색제외 요청 | `20-request-crawl.md` |
|
|
35
|
+
| 사이트맵·RSS 제출 | `21-request-feed.md` |
|
|
36
|
+
| 사이트 간단 체크 / URL 검사 도구 | `22-diagnose-site.md`, `23-url-inspection.md` |
|
|
37
|
+
| 서치어드바이저 리포트 해석 | `24`~`28-*.md` (노출/클릭, 진단, 최적화, 수집현황, 사이트상태) |
|
|
38
|
+
| 구조화된 데이터 개념·JSON-LD 형식 | `29-structured-data-intro.md` |
|
|
39
|
+
| 특정 타입 마크업 (식당/리뷰/레시피 등) | 아래 **구조화된 데이터 표** 참조 |
|
|
40
|
+
| 대량 색인 API 연동 | `44-crawl-request-api.md` |
|
|
41
|
+
| IndexNow 도입 | `45`~`48-indexnow-*.md` |
|
|
42
|
+
| 검색에 안 나와요 | `52-faq-serpmissing.md` → `22-diagnose-site.md` |
|
|
43
|
+
| 검색에서 빼고 싶어요 | `53-faq-serpremove.md` |
|
|
44
|
+
| 검색결과 제목/설명이 이상해요 | `51-faq-serpedit.md` |
|
|
45
|
+
| 서브링크가 안 나와요 | `54-faq-sublink.md` |
|
|
46
|
+
|
|
47
|
+
전체 목록은 `references/INDEX.md`.
|
|
48
|
+
|
|
49
|
+
## 구조화된 데이터 타입 표
|
|
50
|
+
|
|
51
|
+
**자가 적용 가능** — 마크업만 하면 되는 타입:
|
|
52
|
+
|
|
53
|
+
| 타입 | 필수 속성 | 문서 |
|
|
54
|
+
|---|---|---|
|
|
55
|
+
| `Restaurant` | name, openingHours | `39-structured-data-restaurant.md` |
|
|
56
|
+
| `Review` | reviewBody | `38-structured-data-review.md` |
|
|
57
|
+
| `AggregateRating` | ratingValue | `36-structured-data-rating.md` |
|
|
58
|
+
| `Recipe` | recipeInstruction | `37-structured-data-recipe.md` |
|
|
59
|
+
| `HowTo` | text | `34-structured-data-howto.md` |
|
|
60
|
+
| `BreadcrumbList` | name | `33-structured-data-breadcrumb.md` |
|
|
61
|
+
| `ListItem` (캐러셀) | image | `35-structured-data-carousel.md` |
|
|
62
|
+
| `PostalAddress` | streetAddress | `32-structured-data-address.md` |
|
|
63
|
+
| `Movie` | name, actor | `41-structured-data-movie.md` |
|
|
64
|
+
| `TVSeries` | name, actor | `40-structured-data-tvseries.md` |
|
|
65
|
+
| `SoftwareApplication` | name, applicationCategory | `42-structured-data-software.md` |
|
|
66
|
+
| `Organization`/`Person` (연관채널) | name, url, sameAs | `30-structured-data-channel.md` |
|
|
67
|
+
|
|
68
|
+
**제휴(협의) 필요** — 마크업만으로는 노출되지 않는다. 사용자에게 반드시 알릴 것:
|
|
69
|
+
|
|
70
|
+
| 타입 | 조건 | 문서 |
|
|
71
|
+
|---|---|---|
|
|
72
|
+
| `JobPosting` (채용정보) | 네이버 제휴제안 + 수집요청 API 연동 필수 | `31-structured-data-job.md` |
|
|
73
|
+
| `VideoObject` (동영상) | 동영상콘텐츠 제휴 + Push 방식 수집 | `43-structured-data-video.md` |
|
|
74
|
+
|
|
75
|
+
권장 형식은 **JSON-LD 또는 Microdata** (출처: `structured-data-intro`). 검증은 <https://validator.schema.org/>.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
> optbrew distribution note: The upstream notice below is preserved for attribution. This bundle excludes all 55 Naver article bodies and the article-fetch tool. Its statements about the upstream repository's contents and workflow do not describe this package.
|
|
2
|
+
|
|
3
|
+
# 저작권 및 출처 고지 (NOTICE)
|
|
4
|
+
|
|
5
|
+
## 원문 자료
|
|
6
|
+
|
|
7
|
+
`references/guide/` 아래 55개 Markdown 문서는 **네이버 서치어드바이저 웹마스터 가이드**
|
|
8
|
+
(<https://searchadvisor.naver.com/guide>)의 공개 문서를 Markdown으로 변환한 것입니다.
|
|
9
|
+
|
|
10
|
+
- **저작권자: 네이버 주식회사 (NAVER Corp.)**
|
|
11
|
+
- 본 저장소는 네이버(주)와 아무런 관련이 없으며, 공식 제공물이나 승인을 받은 배포물이 아닙니다.
|
|
12
|
+
- 문서 본문에는 어떠한 수정·요약·재해석도 가하지 않았습니다. HTML → Markdown 형식 변환만 수행했습니다.
|
|
13
|
+
- 각 파일은 front matter에 원문 URL(`source`)과 네이버가 명시한 수정일(`updated`)을 보존합니다.
|
|
14
|
+
- 수집 시점: 2026년 7월. 이후 원문이 변경되었을 수 있으므로, **정확한 최신 내용은 항상 `source`의 원문을 확인하십시오.**
|
|
15
|
+
|
|
16
|
+
재배포 목적은 AI 에이전트가 오프라인에서 정확한 근거 자료를 참조하도록 하는 것입니다.
|
|
17
|
+
AI가 네이버 SEO를 추측이나 구글 SEO 지식으로 답하는 것을 막으려면 원문 접근이 필요하며,
|
|
18
|
+
요약본을 쓰면 그 과정에서 정보가 왜곡되므로 원문을 그대로 두었습니다.
|
|
19
|
+
|
|
20
|
+
**네이버(주)의 요청이 있을 경우 `references/guide/` 전체를 즉시 삭제하고,
|
|
21
|
+
사용자가 `tools/fetch-guide.mjs`로 직접 내려받는 방식으로 전환합니다.**
|
|
22
|
+
이슈 또는 저장소 소유자에게 연락 주시기 바랍니다.
|
|
23
|
+
|
|
24
|
+
## 이 저장소가 직접 작성한 부분
|
|
25
|
+
|
|
26
|
+
다음은 이 프로젝트의 창작물이며 MIT 라이선스를 따릅니다 ([LICENSE](../../licenses/naver-searchadvisor.txt)).
|
|
27
|
+
|
|
28
|
+
- `SKILL.md` — 스킬 지침, 라우팅 표, 워크플로
|
|
29
|
+
- `scripts/audit.mjs` — 진단 스크립트
|
|
30
|
+
- `tools/fetch-guide.mjs` — 수집 스크립트
|
|
31
|
+
- `README.md`, `NOTICE.md`, `references/INDEX.md`
|
|
32
|
+
|
|
33
|
+
## 상표
|
|
34
|
+
|
|
35
|
+
NAVER, 네이버, 서치어드바이저, Yeti는 네이버 주식회사의 상표입니다.
|
|
36
|
+
이 저장소에서는 식별 목적으로만 사용합니다.
|
|
37
|
+
|
|
38
|
+
---
|
|
39
|
+
|
|
40
|
+
# Copyright Notice (English)
|
|
41
|
+
|
|
42
|
+
The 55 Markdown documents under `references/guide/` are Markdown conversions of the publicly
|
|
43
|
+
available **NAVER Search Advisor Webmaster Guide** (<https://searchadvisor.naver.com/guide>).
|
|
44
|
+
|
|
45
|
+
- **Copyright: NAVER Corporation**
|
|
46
|
+
- This repository is **not** affiliated with, endorsed by, or approved by NAVER Corporation.
|
|
47
|
+
- Document bodies are unmodified — only HTML-to-Markdown format conversion was applied.
|
|
48
|
+
- Each file preserves the original URL (`source`) and NAVER's stated revision date (`updated`)
|
|
49
|
+
in its front matter. Snapshot taken July 2026 — always verify against the `source` URL.
|
|
50
|
+
|
|
51
|
+
Redistribution serves to give AI agents offline access to accurate primary sources, preventing
|
|
52
|
+
them from answering Naver SEO questions with guesswork or Google SEO knowledge.
|
|
53
|
+
|
|
54
|
+
**If NAVER Corporation requests removal, `references/guide/` will be deleted immediately** and
|
|
55
|
+
replaced with a fetch-it-yourself flow via `tools/fetch-guide.mjs`.
|
|
56
|
+
|
|
57
|
+
Original work in this repository (`SKILL.md`, `scripts/`, `tools/`, docs) is MIT licensed.
|
|
58
|
+
NAVER, Search Advisor, and Yeti are trademarks of NAVER Corporation, used here for
|
|
59
|
+
identification purposes only.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# 네이버 서치어드바이저 웹마스터 가이드 — 전체 색인
|
|
2
|
+
|
|
3
|
+
출처: https://searchadvisor.naver.com/guide
|
|
4
|
+
라이선스: 아래 문서 본문의 저작권은 네이버(주)에 있습니다. NOTICE.md 참고.
|
|
5
|
+
수집 문서: 55 / 55
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
## 검색엔진 최적화 기초
|
|
9
|
+
|
|
10
|
+
- [검색엔진 최적화의 목적](https://searchadvisor.naver.com/guide/seo-basic-intro) — `seo-basic-intro`, 수정 2025-02-10
|
|
11
|
+
- [웹 사이트를 만들 때](https://searchadvisor.naver.com/guide/seo-basic-create) — `seo-basic-create`, 수정 2020-08-03
|
|
12
|
+
- [robots.txt 설정하기](https://searchadvisor.naver.com/guide/seo-basic-robots) — `seo-basic-robots`, 수정 2025-10-14
|
|
13
|
+
- [웹 페이지의 이동](https://searchadvisor.naver.com/guide/seo-basic-redirect) — `seo-basic-redirect`, 수정 2025-03-12
|
|
14
|
+
- [웹 사이트 이전](https://searchadvisor.naver.com/guide/seo-basic-migration) — `seo-basic-migration`, 수정 2025-05-15
|
|
15
|
+
- [웹 사이트 운영을 그만둘 때](https://searchadvisor.naver.com/guide/seo-basic-close) — `seo-basic-close`, 수정 2019-09-21
|
|
16
|
+
- [검색로봇 확인 방법](https://searchadvisor.naver.com/guide/seo-basic-firewall) — `seo-basic-firewall`, 수정 2026-05-11
|
|
17
|
+
- [HTTP 규약(Protocol)](https://searchadvisor.naver.com/guide/seo-basic-http) — `seo-basic-http`, 수정 2025-03-12
|
|
18
|
+
|
|
19
|
+
## 검색엔진 최적화 고급
|
|
20
|
+
|
|
21
|
+
- [자바스크립트 검색 최적화](https://searchadvisor.naver.com/guide/seo-advanced-javascript) — `seo-advanced-javascript`, 수정 2025-02-10
|
|
22
|
+
- [검색 친화적인 URL 구축하기](https://searchadvisor.naver.com/guide/seo-advanced-url) — `seo-advanced-url`, 수정 2021-03-24
|
|
23
|
+
- [사이트의 색인 효율성 개선하기](https://searchadvisor.naver.com/guide/seo-advanced-indexing) — `seo-advanced-indexing`, 수정 2021-10-27
|
|
24
|
+
- [SEO 기본 가이드](https://searchadvisor.naver.com/guide/seo-help) — `seo-help`, 수정 2024-12-11
|
|
25
|
+
- [리소스와 링크 관리](https://searchadvisor.naver.com/guide/resource-and-link) — `resource-and-link`, 수정 2024-08-26
|
|
26
|
+
|
|
27
|
+
## 콘텐츠 가이드라인
|
|
28
|
+
|
|
29
|
+
- [웹 콘텐츠 스팸사례](https://searchadvisor.naver.com/guide/content-abusing) — `content-abusing`, 수정 2026-07-03
|
|
30
|
+
- [콘텐츠 작성시 권장 사항](https://searchadvisor.naver.com/guide/content-basic) — `content-basic`, 수정 2026-07-03
|
|
31
|
+
|
|
32
|
+
## HTML 마크업
|
|
33
|
+
|
|
34
|
+
- [선호 URL 및 로봇 메타 태그](https://searchadvisor.naver.com/guide/markup-structure) — `markup-structure`, 수정 2025-12-11
|
|
35
|
+
- [콘텐츠 마크업](https://searchadvisor.naver.com/guide/markup-content) — `markup-content`, 수정 2024-05-10
|
|
36
|
+
- [모바일 사용성](https://searchadvisor.naver.com/guide/markup-mobile) — `markup-mobile`, 수정 2020-08-03
|
|
37
|
+
- [파비콘 (Favicon)](https://searchadvisor.naver.com/guide/markup-favicon) — `markup-favicon`, 수정 2025-06-24
|
|
38
|
+
|
|
39
|
+
## 웹사이트 검색연동
|
|
40
|
+
|
|
41
|
+
- [수집요청 및 검색제외](https://searchadvisor.naver.com/guide/request-crawl) — `request-crawl`, 수정 2024-08-12
|
|
42
|
+
- [RSS 및 사이트맵 제출](https://searchadvisor.naver.com/guide/request-feed) — `request-feed`, 수정 2021-10-19
|
|
43
|
+
|
|
44
|
+
## 웹사이트 검증
|
|
45
|
+
|
|
46
|
+
- [사이트 간단 체크](https://searchadvisor.naver.com/guide/diagnose-site) — `diagnose-site`, 수정 2019-10-24
|
|
47
|
+
- [URL 검사](https://searchadvisor.naver.com/guide/url-inspection) — `url-inspection`, 수정 2024-12-16
|
|
48
|
+
|
|
49
|
+
## SEO 리포트
|
|
50
|
+
|
|
51
|
+
- [콘텐츠 노출 및 클릭](https://searchadvisor.naver.com/guide/report-expose-ctr) — `report-expose-ctr`, 수정 2024-10-30
|
|
52
|
+
- [사이트 진단](https://searchadvisor.naver.com/guide/report-diagnosis) — `report-diagnosis`, 수정 2024-07-10
|
|
53
|
+
- [사이트 최적화](https://searchadvisor.naver.com/guide/report-seo) — `report-seo`, 수정 2020-10-30
|
|
54
|
+
- [수집 현황](https://searchadvisor.naver.com/guide/report-crawl-refine) — `report-crawl-refine`, 수정 2024-08-14
|
|
55
|
+
- [사이트 상태](https://searchadvisor.naver.com/guide/site-summary) — `site-summary`, 수정 2025-03-27
|
|
56
|
+
|
|
57
|
+
## 구조화된 데이터 마크업
|
|
58
|
+
|
|
59
|
+
- [구조화된 데이터 소개](https://searchadvisor.naver.com/guide/structured-data-intro) — `structured-data-intro`, 수정 2025-03-24
|
|
60
|
+
- [사이트 연관채널](https://searchadvisor.naver.com/guide/structured-data-channel) — `structured-data-channel`, 수정 2026-04-30
|
|
61
|
+
- [채용정보](https://searchadvisor.naver.com/guide/structured-data-job) — `structured-data-job`, 수정 2025-04-09
|
|
62
|
+
- [주소 (Address)](https://searchadvisor.naver.com/guide/structured-data-address) — `structured-data-address`, 수정 2026-04-30
|
|
63
|
+
- [사이트 이동 경로 (BreadcrumbList)](https://searchadvisor.naver.com/guide/structured-data-breadcrumb) — `structured-data-breadcrumb`, 수정 2026-04-30
|
|
64
|
+
- [하우투 (HowTo)](https://searchadvisor.naver.com/guide/structured-data-howto) — `structured-data-howto`, 수정 2026-04-30
|
|
65
|
+
- [캐러셀 (ListItem)](https://searchadvisor.naver.com/guide/structured-data-carousel) — `structured-data-carousel`, 수정 2026-04-30
|
|
66
|
+
- [평점 (AggregateRating)](https://searchadvisor.naver.com/guide/structured-data-rating) — `structured-data-rating`, 수정 2026-04-30
|
|
67
|
+
- [레시피 (Recipe)](https://searchadvisor.naver.com/guide/structured-data-recipe) — `structured-data-recipe`, 수정 2026-04-30
|
|
68
|
+
- [리뷰 (Review)](https://searchadvisor.naver.com/guide/structured-data-review) — `structured-data-review`, 수정 2026-04-30
|
|
69
|
+
- [식당 (Restaurant)](https://searchadvisor.naver.com/guide/structured-data-restaurant) — `structured-data-restaurant`, 수정 2026-04-30
|
|
70
|
+
- [TV 시리즈 (TVSeries)](https://searchadvisor.naver.com/guide/structured-data-tvseries) — `structured-data-tvseries`, 수정 2026-04-30
|
|
71
|
+
- [영화 (Movie)](https://searchadvisor.naver.com/guide/structured-data-movie) — `structured-data-movie`, 수정 2026-04-30
|
|
72
|
+
- [소프트웨어 (Software)](https://searchadvisor.naver.com/guide/structured-data-software) — `structured-data-software`, 수정 2026-04-30
|
|
73
|
+
- [동영상 검색 (Video Search)](https://searchadvisor.naver.com/guide/structured-data-video) — `structured-data-video`, 수정 2026-03-11
|
|
74
|
+
|
|
75
|
+
## 제휴 API
|
|
76
|
+
|
|
77
|
+
- [수집요청 API 명세 및 연동](https://searchadvisor.naver.com/guide/crawl-request-api) — `crawl-request-api`, 수정 2025-07-25
|
|
78
|
+
|
|
79
|
+
## IndexNow
|
|
80
|
+
|
|
81
|
+
- [IndexNow 소개](https://searchadvisor.naver.com/guide/indexnow-about) — `indexnow-about`, 수정 2023-07-25
|
|
82
|
+
- [API Key 생성하기 ](https://searchadvisor.naver.com/guide/indexnow-api-key) — `indexnow-api-key`, 수정 2023-07-25
|
|
83
|
+
- [페이지 갱신 요청하기](https://searchadvisor.naver.com/guide/indexnow-request) — `indexnow-request`, 수정 2023-07-25
|
|
84
|
+
- [IndexNow - FAQ](https://searchadvisor.naver.com/guide/indexnow-faq) — `indexnow-faq`, 수정 2023-07-25
|
|
85
|
+
|
|
86
|
+
## 네이버 검색 교육 자료
|
|
87
|
+
|
|
88
|
+
- [네이버 웹 검색의 기초](https://searchadvisor.naver.com/guide/education-basic) — `education-basic`, 수정 2020-10-30
|
|
89
|
+
- [웹마스터도구 활용 가이드](https://searchadvisor.naver.com/guide/education-wmt-advanced) — `education-wmt-advanced`, 수정 2019-10-20
|
|
90
|
+
|
|
91
|
+
## FAQ
|
|
92
|
+
|
|
93
|
+
- [검색노출 제목 및 설명문 갱신](https://searchadvisor.naver.com/guide/faq-serpedit) — `faq-serpedit`, 수정 2024-12-11
|
|
94
|
+
- [웹 검색 미노출](https://searchadvisor.naver.com/guide/faq-serpmissing) — `faq-serpmissing`, 수정 2026-04-29
|
|
95
|
+
- [웹 검색 제외](https://searchadvisor.naver.com/guide/faq-serpremove) — `faq-serpremove`, 수정 2025-10-14
|
|
96
|
+
- [서브링크 노출](https://searchadvisor.naver.com/guide/faq-sublink) — `faq-sublink`, 수정 2024-11-12
|
|
97
|
+
- [사이트 등록 및 소유확인](https://searchadvisor.naver.com/guide/faq-start-register) — `faq-start-register`, 수정 2020-12-11
|