@miranda0808/maya-claude 0.1.0
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/README.md +30 -0
- package/bin/maya-claude.js +36 -0
- package/package.json +19 -0
- package/payload/.agents/skills/ab-test-setup/SKILL.md +266 -0
- package/payload/.agents/skills/ab-test-setup/evals/evals.json +105 -0
- package/payload/.agents/skills/ab-test-setup/references/sample-size-guide.md +263 -0
- package/payload/.agents/skills/ab-test-setup/references/test-templates.md +277 -0
- package/payload/.agents/skills/ad-creative/SKILL.md +362 -0
- package/payload/.agents/skills/ad-creative/evals/evals.json +90 -0
- package/payload/.agents/skills/ad-creative/references/generative-tools.md +637 -0
- package/payload/.agents/skills/ad-creative/references/platform-specs.md +213 -0
- package/payload/.agents/skills/ai-seo/SKILL.md +398 -0
- package/payload/.agents/skills/ai-seo/evals/evals.json +90 -0
- package/payload/.agents/skills/ai-seo/references/content-patterns.md +285 -0
- package/payload/.agents/skills/ai-seo/references/platform-ranking-factors.md +152 -0
- package/payload/.agents/skills/analytics-tracking/SKILL.md +309 -0
- package/payload/.agents/skills/analytics-tracking/evals/evals.json +90 -0
- package/payload/.agents/skills/analytics-tracking/references/event-library.md +260 -0
- package/payload/.agents/skills/analytics-tracking/references/ga4-implementation.md +300 -0
- package/payload/.agents/skills/analytics-tracking/references/gtm-implementation.md +390 -0
- package/payload/.agents/skills/churn-prevention/SKILL.md +424 -0
- package/payload/.agents/skills/churn-prevention/evals/evals.json +93 -0
- package/payload/.agents/skills/churn-prevention/references/cancel-flow-patterns.md +316 -0
- package/payload/.agents/skills/churn-prevention/references/dunning-playbook.md +408 -0
- package/payload/.agents/skills/cold-email/SKILL.md +158 -0
- package/payload/.agents/skills/cold-email/evals/evals.json +94 -0
- package/payload/.agents/skills/cold-email/references/benchmarks.md +83 -0
- package/payload/.agents/skills/cold-email/references/follow-up-sequences.md +81 -0
- package/payload/.agents/skills/cold-email/references/frameworks.md +90 -0
- package/payload/.agents/skills/cold-email/references/personalization.md +79 -0
- package/payload/.agents/skills/cold-email/references/subject-lines.md +53 -0
- package/payload/.agents/skills/competitor-alternatives/SKILL.md +256 -0
- package/payload/.agents/skills/competitor-alternatives/evals/evals.json +93 -0
- package/payload/.agents/skills/competitor-alternatives/references/content-architecture.md +271 -0
- package/payload/.agents/skills/competitor-alternatives/references/templates.md +223 -0
- package/payload/.agents/skills/content-strategy/SKILL.md +359 -0
- package/payload/.agents/skills/content-strategy/evals/evals.json +90 -0
- package/payload/.agents/skills/copy-editing/SKILL.md +447 -0
- package/payload/.agents/skills/copy-editing/evals/evals.json +89 -0
- package/payload/.agents/skills/copy-editing/references/plain-english-alternatives.md +394 -0
- package/payload/.agents/skills/copywriting/SKILL.md +252 -0
- package/payload/.agents/skills/copywriting/evals/evals.json +111 -0
- package/payload/.agents/skills/copywriting/references/copy-frameworks.md +344 -0
- package/payload/.agents/skills/copywriting/references/natural-transitions.md +272 -0
- package/payload/.agents/skills/email-sequence/SKILL.md +309 -0
- package/payload/.agents/skills/email-sequence/evals/evals.json +93 -0
- package/payload/.agents/skills/email-sequence/references/copy-guidelines.md +113 -0
- package/payload/.agents/skills/email-sequence/references/email-types.md +515 -0
- package/payload/.agents/skills/email-sequence/references/sequence-templates.md +168 -0
- package/payload/.agents/skills/form-cro/SKILL.md +429 -0
- package/payload/.agents/skills/form-cro/evals/evals.json +90 -0
- package/payload/.agents/skills/free-tool-strategy/SKILL.md +178 -0
- package/payload/.agents/skills/free-tool-strategy/evals/evals.json +90 -0
- package/payload/.agents/skills/free-tool-strategy/references/tool-types.md +217 -0
- package/payload/.agents/skills/launch-strategy/SKILL.md +353 -0
- package/payload/.agents/skills/launch-strategy/evals/evals.json +91 -0
- package/payload/.agents/skills/marketing-ideas/SKILL.md +167 -0
- package/payload/.agents/skills/marketing-ideas/evals/evals.json +90 -0
- package/payload/.agents/skills/marketing-ideas/references/ideas-by-category.md +366 -0
- package/payload/.agents/skills/marketing-psychology/SKILL.md +455 -0
- package/payload/.agents/skills/marketing-psychology/evals/evals.json +88 -0
- package/payload/.agents/skills/onboarding-cro/SKILL.md +220 -0
- package/payload/.agents/skills/onboarding-cro/evals/evals.json +92 -0
- package/payload/.agents/skills/onboarding-cro/references/experiments.md +258 -0
- package/payload/.agents/skills/page-cro/SKILL.md +182 -0
- package/payload/.agents/skills/page-cro/evals/evals.json +111 -0
- package/payload/.agents/skills/page-cro/references/experiments.md +248 -0
- package/payload/.agents/skills/paid-ads/SKILL.md +315 -0
- package/payload/.agents/skills/paid-ads/evals/evals.json +90 -0
- package/payload/.agents/skills/paid-ads/references/ad-copy-templates.md +207 -0
- package/payload/.agents/skills/paid-ads/references/audience-targeting.md +243 -0
- package/payload/.agents/skills/paid-ads/references/platform-setup-checklists.md +277 -0
- package/payload/.agents/skills/paywall-upgrade-cro/SKILL.md +227 -0
- package/payload/.agents/skills/paywall-upgrade-cro/evals/evals.json +93 -0
- package/payload/.agents/skills/paywall-upgrade-cro/references/experiments.md +164 -0
- package/payload/.agents/skills/popup-cro/SKILL.md +453 -0
- package/payload/.agents/skills/popup-cro/evals/evals.json +94 -0
- package/payload/.agents/skills/pricing-strategy/SKILL.md +231 -0
- package/payload/.agents/skills/pricing-strategy/evals/evals.json +90 -0
- package/payload/.agents/skills/pricing-strategy/references/research-methods.md +152 -0
- package/payload/.agents/skills/pricing-strategy/references/tier-structure.md +232 -0
- package/payload/.agents/skills/product-marketing-context/SKILL.md +27 -0
- package/payload/.agents/skills/product-marketing-context/evals/evals.json +40 -0
- package/payload/.agents/skills/programmatic-seo/SKILL.md +238 -0
- package/payload/.agents/skills/programmatic-seo/evals/evals.json +94 -0
- package/payload/.agents/skills/programmatic-seo/references/playbooks.md +308 -0
- package/payload/.agents/skills/referral-program/SKILL.md +255 -0
- package/payload/.agents/skills/referral-program/evals/evals.json +89 -0
- package/payload/.agents/skills/referral-program/references/affiliate-programs.md +164 -0
- package/payload/.agents/skills/referral-program/references/program-examples.md +143 -0
- package/payload/.agents/skills/revops/SKILL.md +343 -0
- package/payload/.agents/skills/revops/evals/evals.json +91 -0
- package/payload/.agents/skills/revops/references/automation-playbooks.md +290 -0
- package/payload/.agents/skills/revops/references/lifecycle-definitions.md +278 -0
- package/payload/.agents/skills/revops/references/routing-rules.md +203 -0
- package/payload/.agents/skills/revops/references/scoring-models.md +247 -0
- package/payload/.agents/skills/sales-enablement/SKILL.md +349 -0
- package/payload/.agents/skills/sales-enablement/evals/evals.json +91 -0
- package/payload/.agents/skills/sales-enablement/references/deck-frameworks.md +263 -0
- package/payload/.agents/skills/sales-enablement/references/demo-scripts.md +355 -0
- package/payload/.agents/skills/sales-enablement/references/objection-library.md +270 -0
- package/payload/.agents/skills/sales-enablement/references/one-pager-templates.md +208 -0
- package/payload/.agents/skills/schema-markup/SKILL.md +179 -0
- package/payload/.agents/skills/schema-markup/evals/evals.json +87 -0
- package/payload/.agents/skills/schema-markup/references/schema-examples.md +398 -0
- package/payload/.agents/skills/seo-audit/SKILL.md +412 -0
- package/payload/.agents/skills/seo-audit/evals/evals.json +136 -0
- package/payload/.agents/skills/seo-audit/references/ai-writing-detection.md +200 -0
- package/payload/.agents/skills/signup-flow-cro/SKILL.md +359 -0
- package/payload/.agents/skills/signup-flow-cro/evals/evals.json +88 -0
- package/payload/.agents/skills/site-architecture/SKILL.md +357 -0
- package/payload/.agents/skills/site-architecture/evals/evals.json +88 -0
- package/payload/.agents/skills/site-architecture/references/mermaid-templates.md +216 -0
- package/payload/.agents/skills/site-architecture/references/navigation-patterns.md +305 -0
- package/payload/.agents/skills/site-architecture/references/site-type-templates.md +293 -0
- package/payload/.agents/skills/social-content/SKILL.md +278 -0
- package/payload/.agents/skills/social-content/evals/evals.json +92 -0
- package/payload/.agents/skills/social-content/references/platforms.md +170 -0
- package/payload/.agents/skills/social-content/references/post-templates.md +177 -0
- package/payload/.agents/skills/social-content/references/reverse-engineering.md +195 -0
- package/payload/.maya/executor.md +79 -0
- package/payload/.maya/meta-api-agent.md +48 -0
- package/payload/.maya/modes/consult.md +63 -0
- package/payload/.maya/modes/task.md +97 -0
- package/payload/.maya/planner.md +69 -0
- package/payload/.maya/researcher.md +51 -0
- package/payload/.maya/templates/plan.md +77 -0
- package/payload/.maya/templates/state.md +87 -0
- package/payload/.maya/templates/task-packet.md +75 -0
- package/payload/MAYA-CATALOG.md +115 -0
- package/payload/MAYA-DEPENDENCIES.md +58 -0
- package/payload/MAYA.md +151 -0
- package/payload/campaigns/README.md +14 -0
- package/payload/commands/maya-consult.md +28 -0
- package/payload/commands/maya-task.md +38 -0
- package/payload/commands/product.md +55 -0
- package/payload/research/README.md +14 -0
- package/payload/templates/README.md +15 -0
- package/payload/templates/plan.md +77 -0
- package/payload/templates/state.md +87 -0
- package/payload/templates/task-packet.md +75 -0
- package/payload/tools/REGISTRY.md +368 -0
- package/payload/tools/clis/README.md +187 -0
- package/payload/tools/clis/activecampaign.js +435 -0
- package/payload/tools/clis/adobe-analytics.js +161 -0
- package/payload/tools/clis/ahrefs.js +192 -0
- package/payload/tools/clis/amplitude.js +182 -0
- package/payload/tools/clis/apollo.js +142 -0
- package/payload/tools/clis/beehiiv.js +245 -0
- package/payload/tools/clis/brevo.js +368 -0
- package/payload/tools/clis/buffer.js +260 -0
- package/payload/tools/clis/calendly.js +253 -0
- package/payload/tools/clis/clearbit.js +163 -0
- package/payload/tools/clis/customer-io.js +205 -0
- package/payload/tools/clis/dataforseo.js +257 -0
- package/payload/tools/clis/demio.js +149 -0
- package/payload/tools/clis/dub.js +158 -0
- package/payload/tools/clis/g2.js +186 -0
- package/payload/tools/clis/ga4.js +194 -0
- package/payload/tools/clis/google-ads.js +189 -0
- package/payload/tools/clis/google-search-console.js +166 -0
- package/payload/tools/clis/hotjar.js +167 -0
- package/payload/tools/clis/hunter.js +249 -0
- package/payload/tools/clis/instantly.js +270 -0
- package/payload/tools/clis/intercom.js +399 -0
- package/payload/tools/clis/keywords-everywhere.js +185 -0
- package/payload/tools/clis/kit.js +232 -0
- package/payload/tools/clis/klaviyo.js +348 -0
- package/payload/tools/clis/lemlist.js +221 -0
- package/payload/tools/clis/linkedin-ads.js +185 -0
- package/payload/tools/clis/livestorm.js +292 -0
- package/payload/tools/clis/mailchimp.js +220 -0
- package/payload/tools/clis/mention-me.js +161 -0
- package/payload/tools/clis/meta-ads.js +181 -0
- package/payload/tools/clis/mixpanel.js +248 -0
- package/payload/tools/clis/onesignal.js +241 -0
- package/payload/tools/clis/optimizely.js +233 -0
- package/payload/tools/clis/paddle.js +385 -0
- package/payload/tools/clis/partnerstack.js +382 -0
- package/payload/tools/clis/plausible.js +249 -0
- package/payload/tools/clis/postmark.js +375 -0
- package/payload/tools/clis/resend.js +370 -0
- package/payload/tools/clis/rewardful.js +160 -0
- package/payload/tools/clis/savvycal.js +223 -0
- package/payload/tools/clis/segment.js +192 -0
- package/payload/tools/clis/semrush.js +207 -0
- package/payload/tools/clis/sendgrid.js +211 -0
- package/payload/tools/clis/snov.js +237 -0
- package/payload/tools/clis/tiktok-ads.js +190 -0
- package/payload/tools/clis/tolt.js +153 -0
- package/payload/tools/clis/trustpilot.js +276 -0
- package/payload/tools/clis/typeform.js +269 -0
- package/payload/tools/clis/wistia.js +256 -0
- package/payload/tools/clis/zapier.js +160 -0
- package/payload/tools/integrations/activecampaign.md +337 -0
- package/payload/tools/integrations/adobe-analytics.md +156 -0
- package/payload/tools/integrations/ahrefs.md +142 -0
- package/payload/tools/integrations/amplitude.md +135 -0
- package/payload/tools/integrations/apollo.md +148 -0
- package/payload/tools/integrations/beehiiv.md +157 -0
- package/payload/tools/integrations/brevo.md +268 -0
- package/payload/tools/integrations/buffer.md +138 -0
- package/payload/tools/integrations/calendly.md +161 -0
- package/payload/tools/integrations/clearbit.md +142 -0
- package/payload/tools/integrations/customer-io.md +187 -0
- package/payload/tools/integrations/dataforseo.md +165 -0
- package/payload/tools/integrations/demio.md +182 -0
- package/payload/tools/integrations/dub-co.md +160 -0
- package/payload/tools/integrations/g2.md +179 -0
- package/payload/tools/integrations/ga4.md +126 -0
- package/payload/tools/integrations/google-ads.md +159 -0
- package/payload/tools/integrations/google-search-console.md +147 -0
- package/payload/tools/integrations/hotjar.md +147 -0
- package/payload/tools/integrations/hubspot.md +178 -0
- package/payload/tools/integrations/hunter.md +90 -0
- package/payload/tools/integrations/instantly.md +104 -0
- package/payload/tools/integrations/intercom.md +292 -0
- package/payload/tools/integrations/keywords-everywhere.md +207 -0
- package/payload/tools/integrations/kit.md +167 -0
- package/payload/tools/integrations/klaviyo.md +228 -0
- package/payload/tools/integrations/lemlist.md +110 -0
- package/payload/tools/integrations/linkedin-ads.md +164 -0
- package/payload/tools/integrations/livestorm.md +313 -0
- package/payload/tools/integrations/mailchimp.md +150 -0
- package/payload/tools/integrations/mention-me.md +160 -0
- package/payload/tools/integrations/meta-ads.md +147 -0
- package/payload/tools/integrations/mixpanel.md +137 -0
- package/payload/tools/integrations/onesignal.md +229 -0
- package/payload/tools/integrations/optimizely.md +171 -0
- package/payload/tools/integrations/paddle.md +212 -0
- package/payload/tools/integrations/partnerstack.md +222 -0
- package/payload/tools/integrations/plausible.md +177 -0
- package/payload/tools/integrations/posthog.md +151 -0
- package/payload/tools/integrations/postmark.md +234 -0
- package/payload/tools/integrations/resend.md +168 -0
- package/payload/tools/integrations/rewardful.md +147 -0
- package/payload/tools/integrations/salesforce.md +150 -0
- package/payload/tools/integrations/savvycal.md +181 -0
- package/payload/tools/integrations/segment.md +159 -0
- package/payload/tools/integrations/semrush.md +121 -0
- package/payload/tools/integrations/sendgrid.md +161 -0
- package/payload/tools/integrations/shopify.md +176 -0
- package/payload/tools/integrations/snov.md +94 -0
- package/payload/tools/integrations/stripe.md +148 -0
- package/payload/tools/integrations/tiktok-ads.md +161 -0
- package/payload/tools/integrations/tolt.md +144 -0
- package/payload/tools/integrations/trustpilot.md +191 -0
- package/payload/tools/integrations/typeform.md +190 -0
- package/payload/tools/integrations/webflow.md +198 -0
- package/payload/tools/integrations/wistia.md +164 -0
- package/payload/tools/integrations/wordpress.md +175 -0
- package/payload/tools/integrations/zapier.md +150 -0
- package/payload/tools/meta/README.md +55 -0
- package/payload/tools/meta/meta-cache-schema.md +65 -0
- package/payload/tools/meta/meta-fetch.ps1 +324 -0
- package/payload/tools/meta/meta-fetch.test.ps1 +38 -0
- package/vendor/shared-installer/manifests/claude-files.json +13 -0
- package/vendor/shared-installer/manifests/codex-files.json +13 -0
- package/vendor/shared-installer/manifests/common-files.json +13 -0
- package/vendor/shared-installer/package.json +15 -0
- package/vendor/shared-installer/src/bootstrap.js +12 -0
- package/vendor/shared-installer/src/cli-options.js +53 -0
- package/vendor/shared-installer/src/fs.js +105 -0
- package/vendor/shared-installer/src/index.js +44 -0
- package/vendor/shared-installer/src/install.js +157 -0
- package/vendor/shared-installer/src/manifest.js +52 -0
- package/vendor/shared-installer/templates/claude/.claude/skills/.gitkeep +1 -0
- package/vendor/shared-installer/templates/claude/CLAUDE.md +27 -0
- package/vendor/shared-installer/templates/codex/.agent/skills/.gitkeep +1 -0
- package/vendor/shared-installer/templates/codex/AGENTS.md +27 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
{
|
|
2
|
+
"skill_name": "schema-markup",
|
|
3
|
+
"evals": [
|
|
4
|
+
{
|
|
5
|
+
"id": 1,
|
|
6
|
+
"prompt": "Add schema markup to our SaaS product's homepage. We're a project management tool called TaskFlow. We need Organization schema and any other relevant types.",
|
|
7
|
+
"expected_output": "Should use approved TASK-PACKET.md inputs first in Maya task workflows, and read PRODUCT.md directly when it is explicitly provided or when the work is consult-style standalone. Should implement Organization schema in JSON-LD format with all required and recommended properties (name, url, logo, description, sameAs for social profiles). Should recommend additional schema types for a SaaS homepage: WebSite (with SearchAction if applicable), SoftwareApplication or Product. Should use @graph for multiple schema types on one page. Should provide the complete JSON-LD code ready to implement. Should recommend validation with Google's Rich Results Test and Schema.org validator.",
|
|
8
|
+
"assertions": [
|
|
9
|
+
"Uses approved TASK-PACKET.md inputs or PRODUCT.md context first",
|
|
10
|
+
"Implements Organization schema in JSON-LD",
|
|
11
|
+
"Includes required and recommended properties",
|
|
12
|
+
"Recommends additional relevant schema types",
|
|
13
|
+
"Uses @graph for multiple types",
|
|
14
|
+
"Provides complete JSON-LD code",
|
|
15
|
+
"Recommends validation tools"
|
|
16
|
+
],
|
|
17
|
+
"files": []
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
"id": 2,
|
|
21
|
+
"prompt": "We have a FAQ page with 20 questions about our product. How do I add FAQ schema to get the rich results in Google?",
|
|
22
|
+
"expected_output": "Should implement FAQPage schema in JSON-LD format. Should show the correct structure: FAQPage as mainEntity containing Question items, each with acceptedAnswer. Should provide a complete code example with 2-3 sample questions. Should explain that FAQ schema can enable rich results showing questions/answers directly in search. Should note Google's guidelines for FAQ schema (factual answers, not promotional). Should recommend validation approach.",
|
|
23
|
+
"assertions": [
|
|
24
|
+
"Implements FAQPage schema in JSON-LD",
|
|
25
|
+
"Shows correct nested structure (FAQPage > Question > Answer)",
|
|
26
|
+
"Provides complete code example",
|
|
27
|
+
"Explains rich result benefits",
|
|
28
|
+
"Notes Google's FAQ schema guidelines",
|
|
29
|
+
"Recommends validation"
|
|
30
|
+
],
|
|
31
|
+
"files": []
|
|
32
|
+
},
|
|
33
|
+
{
|
|
34
|
+
"id": 3,
|
|
35
|
+
"prompt": "add schema to our blog posts. we publish articles about marketing tips.",
|
|
36
|
+
"expected_output": "Should trigger on casual phrasing. Should implement Article (or BlogPosting) schema in JSON-LD. Should include required properties: headline, author (as Person with name and url), datePublished, dateModified, image, publisher (as Organization). Should recommend BreadcrumbList schema alongside the article schema. Should provide template code that can be reused across blog posts. Should address how to populate dynamic fields (date, author, headline) from the CMS.",
|
|
37
|
+
"assertions": [
|
|
38
|
+
"Triggers on casual phrasing",
|
|
39
|
+
"Implements Article or BlogPosting schema",
|
|
40
|
+
"Includes author, datePublished, image, publisher",
|
|
41
|
+
"Recommends BreadcrumbList alongside",
|
|
42
|
+
"Provides reusable template code",
|
|
43
|
+
"Addresses CMS integration for dynamic fields"
|
|
44
|
+
],
|
|
45
|
+
"files": []
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"id": 4,
|
|
49
|
+
"prompt": "We're an e-commerce site selling physical products. What schema markup do we need for our product pages?",
|
|
50
|
+
"expected_output": "Should implement Product schema with full properties: name, description, image, brand, sku, offers (with price, priceCurrency, availability, url). Should recommend AggregateRating if they have reviews, and Review schema for individual reviews. Should include BreadcrumbList for navigation. Should address common e-commerce schema types: Product, Offer, AggregateRating, Review. Should provide complete JSON-LD code. Should note that Product schema can enable rich results (price, availability, ratings in search).",
|
|
51
|
+
"assertions": [
|
|
52
|
+
"Implements Product schema with full properties",
|
|
53
|
+
"Includes Offer with price, availability",
|
|
54
|
+
"Recommends AggregateRating and Review schema",
|
|
55
|
+
"Includes BreadcrumbList",
|
|
56
|
+
"Provides complete JSON-LD code",
|
|
57
|
+
"Notes rich result benefits for products"
|
|
58
|
+
],
|
|
59
|
+
"files": []
|
|
60
|
+
},
|
|
61
|
+
{
|
|
62
|
+
"id": 5,
|
|
63
|
+
"prompt": "We added schema markup to our site but it's not showing rich results in Google. Can you help debug?",
|
|
64
|
+
"expected_output": "Should provide a systematic debugging approach: first validate with Google Rich Results Test and Schema.org validator (syntax errors), then check for common issues (incorrect nesting, missing required properties, JSON-LD placement errors). Should explain that valid schema doesn't guarantee rich results — Google chooses when to show them. Should recommend checking Search Console for structured data reports and errors. Should address common debugging scenarios: schema not detected, warnings vs errors, eligible vs displayed.",
|
|
65
|
+
"assertions": [
|
|
66
|
+
"Recommends validation tools for debugging",
|
|
67
|
+
"Checks for common schema errors",
|
|
68
|
+
"Explains valid schema doesn't guarantee rich results",
|
|
69
|
+
"Recommends Search Console structured data reports",
|
|
70
|
+
"Addresses warnings vs errors distinction",
|
|
71
|
+
"Provides systematic debugging approach"
|
|
72
|
+
],
|
|
73
|
+
"files": []
|
|
74
|
+
},
|
|
75
|
+
{
|
|
76
|
+
"id": 6,
|
|
77
|
+
"prompt": "Our organic search traffic dropped after a site redesign. Can you do a technical SEO audit?",
|
|
78
|
+
"expected_output": "Should recognize this is a technical SEO audit request, not a schema markup task. Should defer to or cross-reference the seo-audit skill, which handles comprehensive technical SEO audits. Schema markup is one component of SEO but doesn't address the broader technical issues (redirects, crawlability, indexation) that likely caused the traffic drop.",
|
|
79
|
+
"assertions": [
|
|
80
|
+
"Recognizes this as a technical SEO audit request",
|
|
81
|
+
"References or defers to seo-audit skill",
|
|
82
|
+
"Does not attempt full SEO audit using schema markup patterns"
|
|
83
|
+
],
|
|
84
|
+
"files": []
|
|
85
|
+
}
|
|
86
|
+
]
|
|
87
|
+
}
|
|
@@ -0,0 +1,398 @@
|
|
|
1
|
+
# Schema Markup Examples
|
|
2
|
+
|
|
3
|
+
Complete JSON-LD examples for common schema types.
|
|
4
|
+
|
|
5
|
+
## Contents
|
|
6
|
+
- Organization
|
|
7
|
+
- WebSite (with SearchAction)
|
|
8
|
+
- Article / BlogPosting
|
|
9
|
+
- Product
|
|
10
|
+
- SoftwareApplication
|
|
11
|
+
- FAQPage
|
|
12
|
+
- HowTo
|
|
13
|
+
- BreadcrumbList
|
|
14
|
+
- LocalBusiness
|
|
15
|
+
- Event
|
|
16
|
+
- Multiple Schema Types
|
|
17
|
+
- Implementation Example (Next.js)
|
|
18
|
+
|
|
19
|
+
## Organization
|
|
20
|
+
|
|
21
|
+
For company/brand homepage or about page.
|
|
22
|
+
|
|
23
|
+
```json
|
|
24
|
+
{
|
|
25
|
+
"@context": "https://schema.org",
|
|
26
|
+
"@type": "Organization",
|
|
27
|
+
"name": "Example Company",
|
|
28
|
+
"url": "https://example.com",
|
|
29
|
+
"logo": "https://example.com/logo.png",
|
|
30
|
+
"sameAs": [
|
|
31
|
+
"https://twitter.com/example",
|
|
32
|
+
"https://linkedin.com/company/example",
|
|
33
|
+
"https://facebook.com/example"
|
|
34
|
+
],
|
|
35
|
+
"contactPoint": {
|
|
36
|
+
"@type": "ContactPoint",
|
|
37
|
+
"telephone": "+1-555-555-5555",
|
|
38
|
+
"contactType": "customer service"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
---
|
|
44
|
+
|
|
45
|
+
## WebSite (with SearchAction)
|
|
46
|
+
|
|
47
|
+
For homepage, enables sitelinks search box.
|
|
48
|
+
|
|
49
|
+
```json
|
|
50
|
+
{
|
|
51
|
+
"@context": "https://schema.org",
|
|
52
|
+
"@type": "WebSite",
|
|
53
|
+
"name": "Example",
|
|
54
|
+
"url": "https://example.com",
|
|
55
|
+
"potentialAction": {
|
|
56
|
+
"@type": "SearchAction",
|
|
57
|
+
"target": {
|
|
58
|
+
"@type": "EntryPoint",
|
|
59
|
+
"urlTemplate": "https://example.com/search?q={search_term_string}"
|
|
60
|
+
},
|
|
61
|
+
"query-input": "required name=search_term_string"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
---
|
|
67
|
+
|
|
68
|
+
## Article / BlogPosting
|
|
69
|
+
|
|
70
|
+
For blog posts and news articles.
|
|
71
|
+
|
|
72
|
+
```json
|
|
73
|
+
{
|
|
74
|
+
"@context": "https://schema.org",
|
|
75
|
+
"@type": "Article",
|
|
76
|
+
"headline": "How to Implement Schema Markup",
|
|
77
|
+
"image": "https://example.com/image.jpg",
|
|
78
|
+
"datePublished": "2024-01-15T08:00:00+00:00",
|
|
79
|
+
"dateModified": "2024-01-20T10:00:00+00:00",
|
|
80
|
+
"author": {
|
|
81
|
+
"@type": "Person",
|
|
82
|
+
"name": "Jane Doe",
|
|
83
|
+
"url": "https://example.com/authors/jane"
|
|
84
|
+
},
|
|
85
|
+
"publisher": {
|
|
86
|
+
"@type": "Organization",
|
|
87
|
+
"name": "Example Company",
|
|
88
|
+
"logo": {
|
|
89
|
+
"@type": "ImageObject",
|
|
90
|
+
"url": "https://example.com/logo.png"
|
|
91
|
+
}
|
|
92
|
+
},
|
|
93
|
+
"description": "A complete guide to implementing schema markup...",
|
|
94
|
+
"mainEntityOfPage": {
|
|
95
|
+
"@type": "WebPage",
|
|
96
|
+
"@id": "https://example.com/schema-guide"
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Product
|
|
104
|
+
|
|
105
|
+
For product pages (e-commerce or SaaS).
|
|
106
|
+
|
|
107
|
+
```json
|
|
108
|
+
{
|
|
109
|
+
"@context": "https://schema.org",
|
|
110
|
+
"@type": "Product",
|
|
111
|
+
"name": "Premium Widget",
|
|
112
|
+
"image": "https://example.com/widget.jpg",
|
|
113
|
+
"description": "Our best-selling widget for professionals",
|
|
114
|
+
"sku": "WIDGET-001",
|
|
115
|
+
"brand": {
|
|
116
|
+
"@type": "Brand",
|
|
117
|
+
"name": "Example Co"
|
|
118
|
+
},
|
|
119
|
+
"offers": {
|
|
120
|
+
"@type": "Offer",
|
|
121
|
+
"url": "https://example.com/products/widget",
|
|
122
|
+
"priceCurrency": "USD",
|
|
123
|
+
"price": "99.99",
|
|
124
|
+
"availability": "https://schema.org/InStock",
|
|
125
|
+
"priceValidUntil": "2024-12-31"
|
|
126
|
+
},
|
|
127
|
+
"aggregateRating": {
|
|
128
|
+
"@type": "AggregateRating",
|
|
129
|
+
"ratingValue": "4.8",
|
|
130
|
+
"reviewCount": "127"
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
---
|
|
136
|
+
|
|
137
|
+
## SoftwareApplication
|
|
138
|
+
|
|
139
|
+
For SaaS product pages and app landing pages.
|
|
140
|
+
|
|
141
|
+
```json
|
|
142
|
+
{
|
|
143
|
+
"@context": "https://schema.org",
|
|
144
|
+
"@type": "SoftwareApplication",
|
|
145
|
+
"name": "Example App",
|
|
146
|
+
"applicationCategory": "BusinessApplication",
|
|
147
|
+
"operatingSystem": "Web, iOS, Android",
|
|
148
|
+
"offers": {
|
|
149
|
+
"@type": "Offer",
|
|
150
|
+
"price": "0",
|
|
151
|
+
"priceCurrency": "USD"
|
|
152
|
+
},
|
|
153
|
+
"aggregateRating": {
|
|
154
|
+
"@type": "AggregateRating",
|
|
155
|
+
"ratingValue": "4.6",
|
|
156
|
+
"ratingCount": "1250"
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
---
|
|
162
|
+
|
|
163
|
+
## FAQPage
|
|
164
|
+
|
|
165
|
+
For pages with frequently asked questions.
|
|
166
|
+
|
|
167
|
+
```json
|
|
168
|
+
{
|
|
169
|
+
"@context": "https://schema.org",
|
|
170
|
+
"@type": "FAQPage",
|
|
171
|
+
"mainEntity": [
|
|
172
|
+
{
|
|
173
|
+
"@type": "Question",
|
|
174
|
+
"name": "What is schema markup?",
|
|
175
|
+
"acceptedAnswer": {
|
|
176
|
+
"@type": "Answer",
|
|
177
|
+
"text": "Schema markup is a structured data vocabulary that helps search engines understand your content..."
|
|
178
|
+
}
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
"@type": "Question",
|
|
182
|
+
"name": "How do I implement schema?",
|
|
183
|
+
"acceptedAnswer": {
|
|
184
|
+
"@type": "Answer",
|
|
185
|
+
"text": "The recommended approach is to use JSON-LD format, placing the script in your page's head..."
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
]
|
|
189
|
+
}
|
|
190
|
+
```
|
|
191
|
+
|
|
192
|
+
---
|
|
193
|
+
|
|
194
|
+
## HowTo
|
|
195
|
+
|
|
196
|
+
For instructional content and tutorials.
|
|
197
|
+
|
|
198
|
+
```json
|
|
199
|
+
{
|
|
200
|
+
"@context": "https://schema.org",
|
|
201
|
+
"@type": "HowTo",
|
|
202
|
+
"name": "How to Add Schema Markup to Your Website",
|
|
203
|
+
"description": "A step-by-step guide to implementing JSON-LD schema",
|
|
204
|
+
"totalTime": "PT15M",
|
|
205
|
+
"step": [
|
|
206
|
+
{
|
|
207
|
+
"@type": "HowToStep",
|
|
208
|
+
"name": "Choose your schema type",
|
|
209
|
+
"text": "Identify the appropriate schema type for your page content...",
|
|
210
|
+
"url": "https://example.com/guide#step1"
|
|
211
|
+
},
|
|
212
|
+
{
|
|
213
|
+
"@type": "HowToStep",
|
|
214
|
+
"name": "Write the JSON-LD",
|
|
215
|
+
"text": "Create the JSON-LD markup following schema.org specifications...",
|
|
216
|
+
"url": "https://example.com/guide#step2"
|
|
217
|
+
},
|
|
218
|
+
{
|
|
219
|
+
"@type": "HowToStep",
|
|
220
|
+
"name": "Add to your page",
|
|
221
|
+
"text": "Insert the script tag in your page's head section...",
|
|
222
|
+
"url": "https://example.com/guide#step3"
|
|
223
|
+
}
|
|
224
|
+
]
|
|
225
|
+
}
|
|
226
|
+
```
|
|
227
|
+
|
|
228
|
+
---
|
|
229
|
+
|
|
230
|
+
## BreadcrumbList
|
|
231
|
+
|
|
232
|
+
For any page with breadcrumb navigation.
|
|
233
|
+
|
|
234
|
+
```json
|
|
235
|
+
{
|
|
236
|
+
"@context": "https://schema.org",
|
|
237
|
+
"@type": "BreadcrumbList",
|
|
238
|
+
"itemListElement": [
|
|
239
|
+
{
|
|
240
|
+
"@type": "ListItem",
|
|
241
|
+
"position": 1,
|
|
242
|
+
"name": "Home",
|
|
243
|
+
"item": "https://example.com"
|
|
244
|
+
},
|
|
245
|
+
{
|
|
246
|
+
"@type": "ListItem",
|
|
247
|
+
"position": 2,
|
|
248
|
+
"name": "Blog",
|
|
249
|
+
"item": "https://example.com/blog"
|
|
250
|
+
},
|
|
251
|
+
{
|
|
252
|
+
"@type": "ListItem",
|
|
253
|
+
"position": 3,
|
|
254
|
+
"name": "SEO Guide",
|
|
255
|
+
"item": "https://example.com/blog/seo-guide"
|
|
256
|
+
}
|
|
257
|
+
]
|
|
258
|
+
}
|
|
259
|
+
```
|
|
260
|
+
|
|
261
|
+
---
|
|
262
|
+
|
|
263
|
+
## LocalBusiness
|
|
264
|
+
|
|
265
|
+
For local business location pages.
|
|
266
|
+
|
|
267
|
+
```json
|
|
268
|
+
{
|
|
269
|
+
"@context": "https://schema.org",
|
|
270
|
+
"@type": "LocalBusiness",
|
|
271
|
+
"name": "Example Coffee Shop",
|
|
272
|
+
"image": "https://example.com/shop.jpg",
|
|
273
|
+
"address": {
|
|
274
|
+
"@type": "PostalAddress",
|
|
275
|
+
"streetAddress": "123 Main Street",
|
|
276
|
+
"addressLocality": "San Francisco",
|
|
277
|
+
"addressRegion": "CA",
|
|
278
|
+
"postalCode": "94102",
|
|
279
|
+
"addressCountry": "US"
|
|
280
|
+
},
|
|
281
|
+
"geo": {
|
|
282
|
+
"@type": "GeoCoordinates",
|
|
283
|
+
"latitude": "37.7749",
|
|
284
|
+
"longitude": "-122.4194"
|
|
285
|
+
},
|
|
286
|
+
"telephone": "+1-555-555-5555",
|
|
287
|
+
"openingHoursSpecification": [
|
|
288
|
+
{
|
|
289
|
+
"@type": "OpeningHoursSpecification",
|
|
290
|
+
"dayOfWeek": ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"],
|
|
291
|
+
"opens": "08:00",
|
|
292
|
+
"closes": "18:00"
|
|
293
|
+
}
|
|
294
|
+
],
|
|
295
|
+
"priceRange": "$$"
|
|
296
|
+
}
|
|
297
|
+
```
|
|
298
|
+
|
|
299
|
+
---
|
|
300
|
+
|
|
301
|
+
## Event
|
|
302
|
+
|
|
303
|
+
For event pages, webinars, conferences.
|
|
304
|
+
|
|
305
|
+
```json
|
|
306
|
+
{
|
|
307
|
+
"@context": "https://schema.org",
|
|
308
|
+
"@type": "Event",
|
|
309
|
+
"name": "Annual Marketing Conference",
|
|
310
|
+
"startDate": "2024-06-15T09:00:00-07:00",
|
|
311
|
+
"endDate": "2024-06-15T17:00:00-07:00",
|
|
312
|
+
"eventAttendanceMode": "https://schema.org/OnlineEventAttendanceMode",
|
|
313
|
+
"eventStatus": "https://schema.org/EventScheduled",
|
|
314
|
+
"location": {
|
|
315
|
+
"@type": "VirtualLocation",
|
|
316
|
+
"url": "https://example.com/conference"
|
|
317
|
+
},
|
|
318
|
+
"image": "https://example.com/conference.jpg",
|
|
319
|
+
"description": "Join us for our annual marketing conference...",
|
|
320
|
+
"offers": {
|
|
321
|
+
"@type": "Offer",
|
|
322
|
+
"url": "https://example.com/conference/tickets",
|
|
323
|
+
"price": "199",
|
|
324
|
+
"priceCurrency": "USD",
|
|
325
|
+
"availability": "https://schema.org/InStock",
|
|
326
|
+
"validFrom": "2024-01-01"
|
|
327
|
+
},
|
|
328
|
+
"performer": {
|
|
329
|
+
"@type": "Organization",
|
|
330
|
+
"name": "Example Company"
|
|
331
|
+
},
|
|
332
|
+
"organizer": {
|
|
333
|
+
"@type": "Organization",
|
|
334
|
+
"name": "Example Company",
|
|
335
|
+
"url": "https://example.com"
|
|
336
|
+
}
|
|
337
|
+
}
|
|
338
|
+
```
|
|
339
|
+
|
|
340
|
+
---
|
|
341
|
+
|
|
342
|
+
## Multiple Schema Types
|
|
343
|
+
|
|
344
|
+
Combine multiple schema types using @graph.
|
|
345
|
+
|
|
346
|
+
```json
|
|
347
|
+
{
|
|
348
|
+
"@context": "https://schema.org",
|
|
349
|
+
"@graph": [
|
|
350
|
+
{
|
|
351
|
+
"@type": "Organization",
|
|
352
|
+
"@id": "https://example.com/#organization",
|
|
353
|
+
"name": "Example Company",
|
|
354
|
+
"url": "https://example.com"
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
"@type": "WebSite",
|
|
358
|
+
"@id": "https://example.com/#website",
|
|
359
|
+
"url": "https://example.com",
|
|
360
|
+
"name": "Example",
|
|
361
|
+
"publisher": {
|
|
362
|
+
"@id": "https://example.com/#organization"
|
|
363
|
+
}
|
|
364
|
+
},
|
|
365
|
+
{
|
|
366
|
+
"@type": "BreadcrumbList",
|
|
367
|
+
"itemListElement": [...]
|
|
368
|
+
}
|
|
369
|
+
]
|
|
370
|
+
}
|
|
371
|
+
```
|
|
372
|
+
|
|
373
|
+
---
|
|
374
|
+
|
|
375
|
+
## Implementation Example (Next.js)
|
|
376
|
+
|
|
377
|
+
```jsx
|
|
378
|
+
export default function ProductPage({ product }) {
|
|
379
|
+
const schema = {
|
|
380
|
+
"@context": "https://schema.org",
|
|
381
|
+
"@type": "Product",
|
|
382
|
+
name: product.name,
|
|
383
|
+
// ... other properties
|
|
384
|
+
};
|
|
385
|
+
|
|
386
|
+
return (
|
|
387
|
+
<>
|
|
388
|
+
<Head>
|
|
389
|
+
<script
|
|
390
|
+
type="application/ld+json"
|
|
391
|
+
dangerouslySetInnerHTML={{ __html: JSON.stringify(schema) }}
|
|
392
|
+
/>
|
|
393
|
+
</Head>
|
|
394
|
+
{/* Page content */}
|
|
395
|
+
</>
|
|
396
|
+
);
|
|
397
|
+
}
|
|
398
|
+
```
|