@su-record/vibe 2.9.32 → 2.9.34
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/.env.example +37 -37
- package/CLAUDE.md +109 -109
- package/LICENSE +21 -21
- package/README.en.md +220 -220
- package/README.md +171 -171
- package/agents/architect-low.md +41 -41
- package/agents/architect-medium.md +59 -59
- package/agents/architect.md +80 -80
- package/agents/build-error-resolver.md +115 -115
- package/agents/compounder.md +261 -261
- package/agents/diagrammer.md +178 -178
- package/agents/docs/api-documenter.md +99 -99
- package/agents/docs/changelog-writer.md +93 -93
- package/agents/e2e-tester.md +294 -294
- package/agents/event/event-comms.md +78 -78
- package/agents/event/event-content.md +68 -68
- package/agents/event/event-image.md +95 -95
- package/agents/event/event-ops.md +84 -84
- package/agents/event/event-scheduler.md +69 -69
- package/agents/event/event-speaker.md +86 -86
- package/agents/explorer-low.md +42 -42
- package/agents/explorer-medium.md +59 -59
- package/agents/explorer.md +48 -48
- package/agents/implementer-low.md +43 -43
- package/agents/implementer-medium.md +52 -52
- package/agents/implementer.md +54 -54
- package/agents/junior-mentor.md +141 -141
- package/agents/planning/requirements-analyst.md +84 -84
- package/agents/planning/ux-advisor.md +83 -83
- package/agents/qa/acceptance-tester.md +86 -86
- package/agents/qa/edge-case-finder.md +93 -93
- package/agents/qa/qa-coordinator.md +131 -131
- package/agents/refactor-cleaner.md +143 -143
- package/agents/research/best-practices-agent.md +199 -199
- package/agents/research/codebase-patterns-agent.md +157 -157
- package/agents/research/framework-docs-agent.md +188 -188
- package/agents/research/security-advisory-agent.md +213 -213
- package/agents/review/architecture-reviewer.md +107 -107
- package/agents/review/complexity-reviewer.md +116 -116
- package/agents/review/data-integrity-reviewer.md +88 -88
- package/agents/review/git-history-reviewer.md +103 -103
- package/agents/review/performance-reviewer.md +86 -86
- package/agents/review/python-reviewer.md +150 -150
- package/agents/review/rails-reviewer.md +139 -139
- package/agents/review/react-reviewer.md +144 -144
- package/agents/review/security-reviewer.md +80 -80
- package/agents/review/simplicity-reviewer.md +140 -140
- package/agents/review/test-coverage-reviewer.md +116 -116
- package/agents/review/typescript-reviewer.md +127 -127
- package/agents/searcher.md +54 -54
- package/agents/simplifier.md +120 -120
- package/agents/teams/debug-team.md +70 -70
- package/agents/teams/dev-team.md +88 -88
- package/agents/teams/docs-team.md +80 -80
- package/agents/teams/figma/figma-analyst.md +52 -52
- package/agents/teams/figma/figma-architect.md +112 -112
- package/agents/teams/figma/figma-auditor.md +82 -82
- package/agents/teams/figma/figma-builder.md +100 -100
- package/agents/teams/figma-team.md +85 -85
- package/agents/teams/fullstack-team.md +83 -83
- package/agents/teams/lite-team.md +69 -69
- package/agents/teams/migration-team.md +78 -78
- package/agents/teams/refactor-team.md +94 -94
- package/agents/teams/research-team.md +86 -86
- package/agents/teams/review-debate-team.md +125 -125
- package/agents/teams/security-team.md +81 -81
- package/agents/tester.md +49 -49
- package/agents/ui/ui-a11y-auditor.md +93 -93
- package/agents/ui/ui-antipattern-detector.md +102 -102
- package/agents/ui/ui-dataviz-advisor.md +69 -69
- package/agents/ui/ui-design-system-gen.md +57 -57
- package/agents/ui/ui-industry-analyzer.md +49 -49
- package/agents/ui/ui-layout-architect.md +65 -65
- package/agents/ui/ui-stack-implementer.md +68 -68
- package/agents/ui/ux-compliance-reviewer.md +81 -81
- package/agents/ui-previewer.md +258 -258
- package/commands/vibe.analyze.md +533 -533
- package/commands/vibe.contract.md +105 -105
- package/commands/vibe.docs.md +33 -33
- package/commands/vibe.event.md +163 -163
- package/commands/vibe.figma.md +600 -600
- package/commands/vibe.harness.md +177 -177
- package/commands/vibe.regress.md +73 -73
- package/commands/vibe.review.md +624 -624
- package/commands/vibe.run.md +1946 -1946
- package/commands/vibe.scaffold.md +195 -195
- package/commands/vibe.spec.md +577 -577
- package/commands/vibe.test.md +49 -49
- package/commands/vibe.trace.md +276 -276
- package/commands/vibe.utils.md +413 -413
- package/commands/vibe.verify.md +572 -572
- package/dist/cli/collaborator.js +52 -52
- package/dist/cli/commands/codex-proxy.js +15 -15
- package/dist/cli/commands/config.js +9 -9
- package/dist/cli/commands/evolution.js +12 -12
- package/dist/cli/commands/figma.js +20 -20
- package/dist/cli/commands/info.d.ts.map +1 -1
- package/dist/cli/commands/info.js +48 -46
- package/dist/cli/commands/info.js.map +1 -1
- package/dist/cli/commands/init.d.ts +6 -3
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +60 -30
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/remove.js +14 -14
- package/dist/cli/commands/sentinel.js +27 -27
- package/dist/cli/commands/skills.js +5 -5
- package/dist/cli/commands/slack.js +10 -10
- package/dist/cli/commands/stats.js +6 -6
- package/dist/cli/commands/telegram.js +12 -12
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +29 -11
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/detect.js +32 -32
- package/dist/cli/index.js +40 -34
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/llm/claude-commands.js +16 -16
- package/dist/cli/llm/config.js +18 -18
- package/dist/cli/llm/gemini-commands.js +16 -16
- package/dist/cli/llm/gpt-commands.js +19 -19
- package/dist/cli/llm/help.js +21 -21
- package/dist/cli/postinstall/cursor-agents.js +32 -32
- package/dist/cli/postinstall/cursor-rules.js +83 -83
- package/dist/cli/postinstall/cursor-skills.js +743 -743
- package/dist/cli/postinstall/main.d.ts.map +1 -1
- package/dist/cli/postinstall/main.js +15 -1
- package/dist/cli/postinstall/main.js.map +1 -1
- package/dist/cli/setup/ProjectSetup.d.ts +25 -6
- package/dist/cli/setup/ProjectSetup.d.ts.map +1 -1
- package/dist/cli/setup/ProjectSetup.js +132 -80
- package/dist/cli/setup/ProjectSetup.js.map +1 -1
- package/dist/cli/setup/Provisioner.js +42 -42
- package/dist/cli/setup.d.ts +1 -1
- package/dist/cli/setup.d.ts.map +1 -1
- package/dist/cli/setup.js +1 -1
- package/dist/cli/setup.js.map +1 -1
- package/dist/infra/lib/DeepInit.js +24 -24
- package/dist/infra/lib/IterationTracker.js +11 -11
- package/dist/infra/lib/PythonParser.js +108 -108
- package/dist/infra/lib/ReviewRace.js +96 -96
- package/dist/infra/lib/SkillFrontmatter.js +28 -28
- package/dist/infra/lib/SkillQualityGate.js +9 -9
- package/dist/infra/lib/SkillRepository.js +159 -159
- package/dist/infra/lib/UltraQA.js +99 -99
- package/dist/infra/lib/autonomy/AuditStore.js +41 -41
- package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
- package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
- package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
- package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
- package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
- package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
- package/dist/infra/lib/embedding/VectorStore.js +22 -22
- package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
- package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
- package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
- package/dist/infra/lib/evolution/InsightStore.js +90 -90
- package/dist/infra/lib/evolution/ParityTester.js +57 -57
- package/dist/infra/lib/evolution/RollbackManager.js +5 -5
- package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
- package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
- package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
- package/dist/infra/lib/evolution/UsageTracker.js +28 -28
- package/dist/infra/lib/gemini/orchestration.js +5 -5
- package/dist/infra/lib/gpt/orchestration.js +4 -4
- package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
- package/dist/infra/lib/memory/MemorySearch.js +57 -57
- package/dist/infra/lib/memory/MemoryStorage.js +181 -181
- package/dist/infra/lib/memory/ObservationStore.js +28 -28
- package/dist/infra/lib/memory/ReflectionStore.js +30 -30
- package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
- package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
- package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
- package/dist/infra/orchestrator/AgentManager.js +12 -12
- package/dist/infra/orchestrator/AgentRegistry.js +65 -65
- package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
- package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
- package/dist/infra/orchestrator/parallelResearch.js +24 -24
- package/dist/tools/convention/analyzeComplexity.test.js +115 -115
- package/dist/tools/convention/validateCodeQuality.test.js +104 -104
- package/dist/tools/memory/createMemoryTimeline.js +10 -10
- package/dist/tools/memory/getMemoryGraph.js +12 -12
- package/dist/tools/memory/getSessionContext.js +9 -9
- package/dist/tools/memory/linkMemories.js +14 -14
- package/dist/tools/memory/listMemories.js +4 -4
- package/dist/tools/memory/recallMemory.js +4 -4
- package/dist/tools/memory/saveMemory.js +4 -4
- package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
- package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
- package/dist/tools/semantic/astGrep.test.js +6 -6
- package/dist/tools/spec/prdParser.test.js +171 -171
- package/dist/tools/spec/specGenerator.js +169 -169
- package/dist/tools/spec/traceabilityMatrix.js +64 -64
- package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
- package/hooks/gemini-hooks.json +73 -73
- package/hooks/hooks.json +134 -134
- package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
- package/hooks/scripts/__tests__/pre-tool-guard.test.js +409 -409
- package/hooks/scripts/__tests__/sentinel-guard.test.js +208 -208
- package/hooks/scripts/auto-commit.js +97 -97
- package/hooks/scripts/auto-format.js +64 -64
- package/hooks/scripts/auto-test.js +81 -81
- package/hooks/scripts/code-check.js +271 -271
- package/hooks/scripts/codex-detect.js +46 -46
- package/hooks/scripts/codex-review-gate.js +80 -80
- package/hooks/scripts/command-log.js +32 -32
- package/hooks/scripts/context-save.js +353 -353
- package/hooks/scripts/evolution-engine.js +91 -91
- package/hooks/scripts/figma-extract.js +768 -768
- package/hooks/scripts/figma-guard.js +219 -219
- package/hooks/scripts/figma-refine.js +315 -315
- package/hooks/scripts/figma-to-scss.js +394 -394
- package/hooks/scripts/figma-validate.js +353 -353
- package/hooks/scripts/hud-status.js +321 -321
- package/hooks/scripts/keyword-detector.js +214 -214
- package/hooks/scripts/lib/dispatcher.js +95 -87
- package/hooks/scripts/lib/scope-from-spec.js +276 -276
- package/hooks/scripts/llm-orchestrate.js +645 -645
- package/hooks/scripts/post-edit-dispatcher.js +9 -6
- package/hooks/scripts/post-edit.js +35 -35
- package/hooks/scripts/pr-test-gate.js +52 -52
- package/hooks/scripts/pre-tool-dispatcher.js +9 -1
- package/hooks/scripts/pre-tool-guard.js +259 -259
- package/hooks/scripts/prompt-dispatcher.js +200 -192
- package/hooks/scripts/scope-guard.js +145 -145
- package/hooks/scripts/sentinel-guard.js +130 -130
- package/hooks/scripts/session-start.js +186 -186
- package/hooks/scripts/skill-injector.js +83 -83
- package/hooks/scripts/step-counter.js +45 -45
- package/hooks/scripts/stop-dispatcher.js +9 -6
- package/hooks/scripts/stop-notify.js +209 -209
- package/hooks/scripts/utils.js +315 -315
- package/languages/csharp-unity.md +515 -515
- package/languages/gdscript-godot.md +470 -470
- package/languages/ruby-rails.md +489 -489
- package/languages/typescript-angular.md +433 -433
- package/languages/typescript-astro.md +416 -416
- package/languages/typescript-electron.md +406 -406
- package/languages/typescript-nestjs.md +524 -524
- package/languages/typescript-svelte.md +407 -407
- package/languages/typescript-tauri.md +365 -365
- package/package.json +106 -106
- package/skills/agents-md/SKILL.md +121 -121
- package/skills/agents-md/rubrics/what-to-keep.md +49 -49
- package/skills/agents-md/templates/agents-md.md +36 -36
- package/skills/arch-guard/SKILL.md +181 -181
- package/skills/arch-guard/agents/detector.md +48 -48
- package/skills/arch-guard/agents/reporter.md +48 -48
- package/skills/arch-guard/agents/rule-generator.md +49 -49
- package/skills/arch-guard/agents/violation-checker.md +51 -51
- package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
- package/skills/arch-guard/frameworks/solid.md +102 -102
- package/skills/arch-guard/scripts/check-boundaries.js +90 -90
- package/skills/arch-guard/templates/arch-rules.json +47 -47
- package/skills/arch-guard/templates/violation-report.md +53 -53
- package/skills/brand-assets/SKILL.md +147 -147
- package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
- package/skills/brand-assets/templates/brand-guide.md +161 -161
- package/skills/capability-loop/SKILL.md +272 -272
- package/skills/capability-loop/agents/capability-designer.md +61 -61
- package/skills/capability-loop/agents/failure-analyst.md +55 -55
- package/skills/capability-loop/agents/implementer.md +50 -50
- package/skills/capability-loop/agents/tester.md +53 -53
- package/skills/capability-loop/templates/capability-spec.md +118 -118
- package/skills/capability-loop/templates/failure-analysis.md +118 -118
- package/skills/characterization-test/SKILL.md +207 -207
- package/skills/characterization-test/agents/behavior-capturer.md +50 -50
- package/skills/characterization-test/agents/coverage-checker.md +54 -54
- package/skills/characterization-test/agents/reporter.md +50 -50
- package/skills/characterization-test/agents/test-writer.md +49 -49
- package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
- package/skills/characterization-test/templates/test-template.ts +101 -101
- package/skills/chub-usage/SKILL.md +139 -139
- package/skills/claude-md-guide/SKILL.md +351 -351
- package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
- package/skills/claude-md-guide/templates/claude-md.md +54 -54
- package/skills/commerce-patterns/SKILL.md +64 -64
- package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
- package/skills/commerce-patterns/templates/product-schema.md +85 -85
- package/skills/commit-push-pr/SKILL.md +77 -77
- package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
- package/skills/commit-push-pr/agents/message-writer.md +50 -50
- package/skills/commit-push-pr/agents/pr-writer.md +58 -58
- package/skills/commit-push-pr/agents/reviewer.md +52 -52
- package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
- package/skills/commit-push-pr/templates/pr-body.md +63 -63
- package/skills/context7-usage/SKILL.md +106 -106
- package/skills/context7-usage/rubrics/when-to-use.md +50 -50
- package/skills/create-prd/SKILL.md +90 -90
- package/skills/create-prd/agents/edge-case-finder.md +48 -48
- package/skills/create-prd/agents/prioritizer.md +60 -60
- package/skills/create-prd/agents/requirements-writer.md +48 -48
- package/skills/create-prd/agents/researcher.md +55 -55
- package/skills/create-prd/agents/reviewer.md +54 -54
- package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
- package/skills/create-prd/frameworks/rice-scoring.md +97 -97
- package/skills/create-prd/orchestrator.md +70 -70
- package/skills/create-prd/rubrics/completeness.md +58 -58
- package/skills/create-prd/templates/prd.md +139 -139
- package/skills/design-audit/SKILL.md +152 -152
- package/skills/design-audit/agents/a11y-auditor.md +43 -43
- package/skills/design-audit/agents/performance-auditor.md +46 -46
- package/skills/design-audit/agents/responsive-auditor.md +46 -46
- package/skills/design-audit/agents/scorer.md +47 -47
- package/skills/design-audit/agents/slop-detector.md +47 -47
- package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
- package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
- package/skills/design-audit/orchestrator.md +64 -64
- package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
- package/skills/design-audit/rubrics/scoring.md +63 -63
- package/skills/design-audit/templates/report.md +88 -88
- package/skills/design-critique/SKILL.md +139 -139
- package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
- package/skills/design-critique/templates/critique-report.md +86 -86
- package/skills/design-distill/SKILL.md +130 -130
- package/skills/design-distill/templates/design-system.md +132 -132
- package/skills/design-normalize/SKILL.md +133 -133
- package/skills/design-normalize/rubrics/token-naming.md +117 -117
- package/skills/design-normalize/templates/token-audit.md +89 -89
- package/skills/design-polish/SKILL.md +131 -131
- package/skills/design-polish/rubrics/polish-checklist.md +68 -68
- package/skills/design-polish/templates/polish-report.md +64 -64
- package/skills/design-teach/SKILL.md +182 -182
- package/skills/design-teach/rubrics/brand-personality.md +73 -73
- package/skills/design-teach/templates/design-context.json +36 -36
- package/skills/devlog/SKILL.md +143 -143
- package/skills/e2e-commerce/SKILL.md +62 -62
- package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
- package/skills/event-comms/SKILL.md +172 -172
- package/skills/event-comms/templates/email-invite.md +99 -99
- package/skills/event-comms/templates/sns-post.md +133 -133
- package/skills/event-ops/SKILL.md +207 -207
- package/skills/event-ops/rubrics/contingency.md +85 -85
- package/skills/event-ops/templates/d-day-checklist.md +65 -65
- package/skills/event-planning/SKILL.md +144 -144
- package/skills/event-planning/rubrics/timeline.md +70 -70
- package/skills/event-planning/templates/event-plan.md +91 -91
- package/skills/exec-plan/SKILL.md +149 -149
- package/skills/exec-plan/agents/decomposer.md +47 -47
- package/skills/exec-plan/agents/dependency-mapper.md +44 -44
- package/skills/exec-plan/agents/estimator.md +43 -43
- package/skills/exec-plan/agents/validator.md +55 -55
- package/skills/exec-plan/orchestrator.md +70 -70
- package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
- package/skills/exec-plan/templates/plan.md +147 -147
- package/skills/git-worktree/SKILL.md +73 -73
- package/skills/git-worktree/rubrics/when-to-use.md +55 -55
- package/skills/handoff/SKILL.md +110 -110
- package/skills/handoff/agents/context-summarizer.md +51 -51
- package/skills/handoff/agents/document-writer.md +63 -63
- package/skills/handoff/agents/state-collector.md +53 -53
- package/skills/handoff/agents/verifier.md +48 -48
- package/skills/handoff/rubrics/completeness.md +62 -62
- package/skills/handoff/templates/handoff.md +107 -107
- package/skills/parallel-research/SKILL.md +104 -104
- package/skills/parallel-research/agents/best-practices.md +43 -43
- package/skills/parallel-research/agents/codebase-patterns.md +46 -46
- package/skills/parallel-research/agents/framework-docs.md +45 -45
- package/skills/parallel-research/agents/security-advisory.md +46 -46
- package/skills/parallel-research/agents/synthesizer.md +57 -57
- package/skills/parallel-research/experts/best-practices.md +50 -50
- package/skills/parallel-research/experts/codebase-patterns.md +70 -70
- package/skills/parallel-research/experts/framework-docs.md +65 -65
- package/skills/parallel-research/experts/security-advisory.md +69 -69
- package/skills/parallel-research/orchestrator.md +79 -79
- package/skills/parallel-research/templates/awesome-list.md +32 -32
- package/skills/parallel-research/templates/paper.md +88 -88
- package/skills/parallel-research/templates/synthesis.md +101 -101
- package/skills/prioritization-frameworks/SKILL.md +87 -87
- package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
- package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
- package/skills/priority-todos/SKILL.md +64 -64
- package/skills/priority-todos/rubrics/prioritization.md +70 -70
- package/skills/priority-todos/templates/todo-board.md +59 -59
- package/skills/seo-checklist/SKILL.md +58 -58
- package/skills/seo-checklist/frameworks/structured-data.md +153 -153
- package/skills/seo-checklist/rubrics/content-seo.md +42 -42
- package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
- package/skills/techdebt/SKILL.md +124 -124
- package/skills/techdebt/agents/analyzer.md +50 -50
- package/skills/techdebt/agents/fixer.md +41 -41
- package/skills/techdebt/agents/reviewer.md +47 -47
- package/skills/techdebt/agents/scanner.md +44 -44
- package/skills/techdebt/orchestrator.md +70 -70
- package/skills/techdebt/rubrics/severity.md +51 -51
- package/skills/techdebt/scripts/scan.js +90 -90
- package/skills/techdebt/templates/report.md +86 -86
- package/skills/tool-fallback/SKILL.md +104 -104
- package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
- package/skills/typescript-advanced-types/SKILL.md +67 -67
- package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
- package/skills/ui-ux-pro-max/SKILL.md +236 -236
- package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
- package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
- package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
- package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
- package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
- package/skills/ui-ux-pro-max/reference/typography.md +455 -455
- package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
- package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
- package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
- package/skills/user-personas/SKILL.md +75 -75
- package/skills/user-personas/rubrics/research-methods.md +56 -56
- package/skills/user-personas/templates/persona.md +89 -89
- package/skills/vercel-react-best-practices/SKILL.md +60 -60
- package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
- package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
- package/skills/vibe-contract/SKILL.md +166 -166
- package/skills/vibe-docs/templates/architecture.md +80 -80
- package/skills/vibe-docs/templates/readme.md +84 -84
- package/skills/vibe-docs/templates/release-notes.md +74 -74
- package/skills/vibe-figma/SKILL.md +363 -363
- package/skills/vibe-figma/rubrics/extraction-checklist.md +51 -51
- package/skills/vibe-figma/templates/component-index.md +126 -126
- package/skills/vibe-figma/templates/component-spec.md +168 -168
- package/skills/vibe-figma/templates/figma-handoff.md +100 -100
- package/skills/vibe-figma/templates/remapped-tree.md +277 -277
- package/skills/vibe-figma-convert/SKILL.md +235 -235
- package/skills/vibe-figma-convert/rubrics/conversion-rules.md +141 -141
- package/skills/vibe-figma-convert/templates/component.md +140 -140
- package/skills/vibe-figma-extract/SKILL.md +241 -241
- package/skills/vibe-figma-extract/rubrics/image-rules.md +157 -157
- package/skills/vibe-interview/SKILL.md +358 -358
- package/skills/vibe-interview/checklists/api.md +101 -101
- package/skills/vibe-interview/checklists/feature.md +88 -88
- package/skills/vibe-interview/checklists/library.md +95 -95
- package/skills/vibe-interview/checklists/mobile.md +89 -89
- package/skills/vibe-interview/checklists/webapp.md +97 -97
- package/skills/vibe-interview/checklists/website.md +99 -99
- package/skills/vibe-plan/SKILL.md +254 -254
- package/skills/vibe-regress/SKILL.md +174 -174
- package/skills/vibe-regress/templates/bug.md +44 -44
- package/skills/vibe-regress/templates/test-jest.md +29 -29
- package/skills/vibe-regress/templates/test-vitest.md +30 -30
- package/skills/vibe-spec/SKILL.md +1195 -1195
- package/skills/vibe-spec-review/SKILL.md +726 -726
- package/skills/vibe-test/SKILL.md +140 -140
- package/skills/video-production/SKILL.md +52 -52
- package/skills/video-production/rubrics/quality-checklist.md +58 -58
- package/skills/video-production/templates/production-plan.md +104 -104
- package/vibe/config.json +29 -29
- package/vibe/constitution.md +227 -227
- package/vibe/rules/principles/communication-guide.md +98 -98
- package/vibe/rules/principles/development-philosophy.md +52 -52
- package/vibe/rules/principles/quick-start.md +102 -102
- package/vibe/rules/quality/bdd-contract-testing.md +393 -393
- package/vibe/rules/quality/checklist.md +276 -276
- package/vibe/rules/quality/performance.md +236 -236
- package/vibe/rules/quality/testing-strategy.md +440 -440
- package/vibe/rules/standards/anti-patterns.md +541 -541
- package/vibe/rules/standards/code-structure.md +291 -291
- package/vibe/rules/standards/complexity-metrics.md +313 -313
- package/vibe/rules/standards/git-workflow.md +237 -237
- package/vibe/rules/standards/naming-conventions.md +198 -198
- package/vibe/rules/standards/security.md +305 -305
- package/vibe/rules/writing/document-style.md +74 -74
- package/vibe/setup.sh +31 -31
- package/vibe/templates/claudemd-template.md +74 -74
- package/vibe/templates/constitution-template.md +267 -267
- package/vibe/templates/contract-backend-template.md +526 -526
- package/vibe/templates/contract-frontend-template.md +599 -599
- package/vibe/templates/feature-template.md +96 -96
- package/vibe/templates/plan-template.md +194 -194
- package/vibe/templates/spec-template.md +221 -221
- package/vibe/ui-ux-data/charts.csv +26 -26
- package/vibe/ui-ux-data/colors.csv +97 -97
- package/vibe/ui-ux-data/icons.csv +101 -101
- package/vibe/ui-ux-data/landing.csv +31 -31
- package/vibe/ui-ux-data/products.csv +96 -96
- package/vibe/ui-ux-data/react-performance.csv +45 -45
- package/vibe/ui-ux-data/stacks/astro.csv +54 -54
- package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
- package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
- package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
- package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
- package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
- package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
- package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
- package/vibe/ui-ux-data/stacks/react.csv +54 -54
- package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
- package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
- package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
- package/vibe/ui-ux-data/stacks/vue.csv +50 -50
- package/vibe/ui-ux-data/styles.csv +68 -68
- package/vibe/ui-ux-data/typography.csv +57 -57
- package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
- package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
- package/vibe/ui-ux-data/version.json +31 -31
- package/vibe/ui-ux-data/web-interface.csv +31 -31
|
@@ -1,59 +1,59 @@
|
|
|
1
|
-
# TODO Board: {{PROJECT_OR_FEATURE_NAME}}
|
|
2
|
-
|
|
3
|
-
**Updated**: {{DATE}}
|
|
4
|
-
**Branch**: {{GIT_BRANCH}}
|
|
5
|
-
**Total open**: {{TOTAL_OPEN}} | P1: {{P1_COUNT}} | P2: {{P2_COUNT}} | P3: {{P3_COUNT}}
|
|
6
|
-
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
## P1 — Blocks Merge ({{P1_COUNT}} open)
|
|
10
|
-
|
|
11
|
-
> All P1 items must be resolved before this branch can be merged.
|
|
12
|
-
|
|
13
|
-
| ID | Title | File:Line | Assigned | Status |
|
|
14
|
-
|----|-------|-----------|----------|--------|
|
|
15
|
-
| P1-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{ASSIGNEE_1}} | {{STATUS_1}} |
|
|
16
|
-
| P1-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{ASSIGNEE_2}} | {{STATUS_2}} |
|
|
17
|
-
|
|
18
|
-
{{#if P1_EMPTY}}
|
|
19
|
-
_No P1 items. Merge is unblocked._
|
|
20
|
-
{{/if}}
|
|
21
|
-
|
|
22
|
-
---
|
|
23
|
-
|
|
24
|
-
## P2 — Fix Before PR ({{P2_COUNT}} open)
|
|
25
|
-
|
|
26
|
-
> P2 items should be resolved before PR review. Warning only — does not block merge.
|
|
27
|
-
|
|
28
|
-
| ID | Title | File:Line | Assigned | Status |
|
|
29
|
-
|----|-------|-----------|----------|--------|
|
|
30
|
-
| P2-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{ASSIGNEE_1}} | {{STATUS_1}} |
|
|
31
|
-
| P2-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{ASSIGNEE_2}} | {{STATUS_2}} |
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## P3 — Backlog ({{P3_COUNT}} open)
|
|
36
|
-
|
|
37
|
-
> P3 items do not block merge. Address during scheduled cleanup sessions.
|
|
38
|
-
|
|
39
|
-
| ID | Title | File:Line | Notes |
|
|
40
|
-
|----|-------|-----------|-------|
|
|
41
|
-
| P3-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{NOTES_1}} |
|
|
42
|
-
| P3-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{NOTES_2}} |
|
|
43
|
-
|
|
44
|
-
---
|
|
45
|
-
|
|
46
|
-
## Completed (archived)
|
|
47
|
-
|
|
48
|
-
| ID | Title | Resolved | PR/Commit |
|
|
49
|
-
|----|-------|----------|-----------|
|
|
50
|
-
| {{DONE_ID_1}} | {{DONE_TITLE_1}} | {{DONE_DATE_1}} | {{DONE_REF_1}} |
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## Merge Checklist
|
|
55
|
-
|
|
56
|
-
- [ ] P1 count = 0
|
|
57
|
-
- [ ] P2 items reviewed (resolved or documented)
|
|
58
|
-
- [ ] index.md reflects current state
|
|
59
|
-
- [ ] Completed items archived to `done/`
|
|
1
|
+
# TODO Board: {{PROJECT_OR_FEATURE_NAME}}
|
|
2
|
+
|
|
3
|
+
**Updated**: {{DATE}}
|
|
4
|
+
**Branch**: {{GIT_BRANCH}}
|
|
5
|
+
**Total open**: {{TOTAL_OPEN}} | P1: {{P1_COUNT}} | P2: {{P2_COUNT}} | P3: {{P3_COUNT}}
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## P1 — Blocks Merge ({{P1_COUNT}} open)
|
|
10
|
+
|
|
11
|
+
> All P1 items must be resolved before this branch can be merged.
|
|
12
|
+
|
|
13
|
+
| ID | Title | File:Line | Assigned | Status |
|
|
14
|
+
|----|-------|-----------|----------|--------|
|
|
15
|
+
| P1-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{ASSIGNEE_1}} | {{STATUS_1}} |
|
|
16
|
+
| P1-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{ASSIGNEE_2}} | {{STATUS_2}} |
|
|
17
|
+
|
|
18
|
+
{{#if P1_EMPTY}}
|
|
19
|
+
_No P1 items. Merge is unblocked._
|
|
20
|
+
{{/if}}
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## P2 — Fix Before PR ({{P2_COUNT}} open)
|
|
25
|
+
|
|
26
|
+
> P2 items should be resolved before PR review. Warning only — does not block merge.
|
|
27
|
+
|
|
28
|
+
| ID | Title | File:Line | Assigned | Status |
|
|
29
|
+
|----|-------|-----------|----------|--------|
|
|
30
|
+
| P2-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{ASSIGNEE_1}} | {{STATUS_1}} |
|
|
31
|
+
| P2-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{ASSIGNEE_2}} | {{STATUS_2}} |
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## P3 — Backlog ({{P3_COUNT}} open)
|
|
36
|
+
|
|
37
|
+
> P3 items do not block merge. Address during scheduled cleanup sessions.
|
|
38
|
+
|
|
39
|
+
| ID | Title | File:Line | Notes |
|
|
40
|
+
|----|-------|-----------|-------|
|
|
41
|
+
| P3-{{ID_1}} | {{TITLE_1}} | `{{FILE_1}}:{{LINE_1}}` | {{NOTES_1}} |
|
|
42
|
+
| P3-{{ID_2}} | {{TITLE_2}} | `{{FILE_2}}:{{LINE_2}}` | {{NOTES_2}} |
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
## Completed (archived)
|
|
47
|
+
|
|
48
|
+
| ID | Title | Resolved | PR/Commit |
|
|
49
|
+
|----|-------|----------|-----------|
|
|
50
|
+
| {{DONE_ID_1}} | {{DONE_TITLE_1}} | {{DONE_DATE_1}} | {{DONE_REF_1}} |
|
|
51
|
+
|
|
52
|
+
---
|
|
53
|
+
|
|
54
|
+
## Merge Checklist
|
|
55
|
+
|
|
56
|
+
- [ ] P1 count = 0
|
|
57
|
+
- [ ] P2 items reviewed (resolved or documented)
|
|
58
|
+
- [ ] index.md reflects current state
|
|
59
|
+
- [ ] Completed items archived to `done/`
|
|
@@ -1,58 +1,58 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: seo-checklist
|
|
3
|
-
tier: core
|
|
4
|
-
description: "SEO gotchas for web development — easy-to-miss items that hurt search ranking. Covers meta tags, Open Graph, structured data (JSON-LD), sitemap, robots.txt, canonical URLs, and Naver/Google-specific requirements. Use when building or reviewing any public-facing web page, landing page, or marketing site. Must use this skill when user mentions SEO, search ranking, meta tags, or when deploying a web app that needs to be discoverable."
|
|
5
|
-
triggers: [seo, search, meta, sitemap, schema, structured data, og, opengraph, google, naver]
|
|
6
|
-
priority: 65
|
|
7
|
-
---
|
|
8
|
-
|
|
9
|
-
# SEO Checklist
|
|
10
|
-
|
|
11
|
-
## Pre-check (K1)
|
|
12
|
-
|
|
13
|
-
> Is this a public-facing web page that needs search visibility? Internal tools, admin panels, and authenticated-only pages don't need SEO optimization.
|
|
14
|
-
|
|
15
|
-
## Easy-to-Miss Gotchas
|
|
16
|
-
|
|
17
|
-
### Meta & Social
|
|
18
|
-
|
|
19
|
-
| Gotcha | Why It Hurts | Fix |
|
|
20
|
-
|--------|-------------|-----|
|
|
21
|
-
| Missing `<link rel="canonical">` | Duplicate content penalty from URL variants | Set canonical on every page, including paginated |
|
|
22
|
-
| OG image wrong size | Cropped/pixelated on social share | Must be exactly **1200x630px** |
|
|
23
|
-
| Same title/description on all pages | Google treats as duplicate content | Unique title (50-60 chars) + description (150-160 chars) per page |
|
|
24
|
-
| Missing `og:type` | Defaults to "website" for articles | Set `article` for posts, `product` for products |
|
|
25
|
-
|
|
26
|
-
### Technical
|
|
27
|
-
|
|
28
|
-
| Gotcha | Why It Hurts | Fix |
|
|
29
|
-
|--------|-------------|-----|
|
|
30
|
-
| `robots.txt` blocks important pages | Pages not indexed | `Allow: /` for public, only block `/api/`, `/admin/` |
|
|
31
|
-
| No sitemap or stale sitemap | Crawler misses new pages | Auto-generate, include `<lastmod>` with real dates |
|
|
32
|
-
| `noindex` left in production | Entire site invisible | Verify `<meta name="robots">` in production build |
|
|
33
|
-
| Images without `width`/`height` | CLS layout shift penalty | Always set dimensions + `loading="lazy"` for below-fold |
|
|
34
|
-
|
|
35
|
-
### Core Web Vitals
|
|
36
|
-
|
|
37
|
-
| Metric | Target | Common Miss |
|
|
38
|
-
|--------|--------|-------------|
|
|
39
|
-
| LCP | ≤2.5s | Hero image not preloaded — add `<link rel="preload">` |
|
|
40
|
-
| INP | ≤200ms | Heavy JS on interaction — defer non-critical scripts |
|
|
41
|
-
| CLS | ≤0.1 | Dynamic content without reserved space — set `min-height` |
|
|
42
|
-
|
|
43
|
-
### Structured Data
|
|
44
|
-
|
|
45
|
-
| Gotcha | Fix |
|
|
46
|
-
|--------|-----|
|
|
47
|
-
| JSON-LD not validated | Test with Google Rich Results Test before deploy |
|
|
48
|
-
| Wrong `@type` | `Product` for products, `Article` for posts, `FAQPage` for FAQs |
|
|
49
|
-
| Missing `BreadcrumbList` | Add breadcrumb schema for all non-root pages |
|
|
50
|
-
|
|
51
|
-
## Done Criteria (K4)
|
|
52
|
-
|
|
53
|
-
- [ ] Every page has unique title, description, canonical URL
|
|
54
|
-
- [ ] OG images are 1200x630px on all shareable pages
|
|
55
|
-
- [ ] `robots.txt` and `sitemap.xml` present and correct
|
|
56
|
-
- [ ] Structured data validates in Rich Results Test
|
|
57
|
-
- [ ] Core Web Vitals green (LCP ≤2.5s, INP ≤200ms, CLS ≤0.1)
|
|
58
|
-
- [ ] No `noindex` tags in production
|
|
1
|
+
---
|
|
2
|
+
name: seo-checklist
|
|
3
|
+
tier: core
|
|
4
|
+
description: "SEO gotchas for web development — easy-to-miss items that hurt search ranking. Covers meta tags, Open Graph, structured data (JSON-LD), sitemap, robots.txt, canonical URLs, and Naver/Google-specific requirements. Use when building or reviewing any public-facing web page, landing page, or marketing site. Must use this skill when user mentions SEO, search ranking, meta tags, or when deploying a web app that needs to be discoverable."
|
|
5
|
+
triggers: [seo, search, meta, sitemap, schema, structured data, og, opengraph, google, naver]
|
|
6
|
+
priority: 65
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# SEO Checklist
|
|
10
|
+
|
|
11
|
+
## Pre-check (K1)
|
|
12
|
+
|
|
13
|
+
> Is this a public-facing web page that needs search visibility? Internal tools, admin panels, and authenticated-only pages don't need SEO optimization.
|
|
14
|
+
|
|
15
|
+
## Easy-to-Miss Gotchas
|
|
16
|
+
|
|
17
|
+
### Meta & Social
|
|
18
|
+
|
|
19
|
+
| Gotcha | Why It Hurts | Fix |
|
|
20
|
+
|--------|-------------|-----|
|
|
21
|
+
| Missing `<link rel="canonical">` | Duplicate content penalty from URL variants | Set canonical on every page, including paginated |
|
|
22
|
+
| OG image wrong size | Cropped/pixelated on social share | Must be exactly **1200x630px** |
|
|
23
|
+
| Same title/description on all pages | Google treats as duplicate content | Unique title (50-60 chars) + description (150-160 chars) per page |
|
|
24
|
+
| Missing `og:type` | Defaults to "website" for articles | Set `article` for posts, `product` for products |
|
|
25
|
+
|
|
26
|
+
### Technical
|
|
27
|
+
|
|
28
|
+
| Gotcha | Why It Hurts | Fix |
|
|
29
|
+
|--------|-------------|-----|
|
|
30
|
+
| `robots.txt` blocks important pages | Pages not indexed | `Allow: /` for public, only block `/api/`, `/admin/` |
|
|
31
|
+
| No sitemap or stale sitemap | Crawler misses new pages | Auto-generate, include `<lastmod>` with real dates |
|
|
32
|
+
| `noindex` left in production | Entire site invisible | Verify `<meta name="robots">` in production build |
|
|
33
|
+
| Images without `width`/`height` | CLS layout shift penalty | Always set dimensions + `loading="lazy"` for below-fold |
|
|
34
|
+
|
|
35
|
+
### Core Web Vitals
|
|
36
|
+
|
|
37
|
+
| Metric | Target | Common Miss |
|
|
38
|
+
|--------|--------|-------------|
|
|
39
|
+
| LCP | ≤2.5s | Hero image not preloaded — add `<link rel="preload">` |
|
|
40
|
+
| INP | ≤200ms | Heavy JS on interaction — defer non-critical scripts |
|
|
41
|
+
| CLS | ≤0.1 | Dynamic content without reserved space — set `min-height` |
|
|
42
|
+
|
|
43
|
+
### Structured Data
|
|
44
|
+
|
|
45
|
+
| Gotcha | Fix |
|
|
46
|
+
|--------|-----|
|
|
47
|
+
| JSON-LD not validated | Test with Google Rich Results Test before deploy |
|
|
48
|
+
| Wrong `@type` | `Product` for products, `Article` for posts, `FAQPage` for FAQs |
|
|
49
|
+
| Missing `BreadcrumbList` | Add breadcrumb schema for all non-root pages |
|
|
50
|
+
|
|
51
|
+
## Done Criteria (K4)
|
|
52
|
+
|
|
53
|
+
- [ ] Every page has unique title, description, canonical URL
|
|
54
|
+
- [ ] OG images are 1200x630px on all shareable pages
|
|
55
|
+
- [ ] `robots.txt` and `sitemap.xml` present and correct
|
|
56
|
+
- [ ] Structured data validates in Rich Results Test
|
|
57
|
+
- [ ] Core Web Vitals green (LCP ≤2.5s, INP ≤200ms, CLS ≤0.1)
|
|
58
|
+
- [ ] No `noindex` tags in production
|
|
@@ -1,153 +1,153 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: structured-data
|
|
3
|
-
type: framework
|
|
4
|
-
applies-to: [seo-checklist]
|
|
5
|
-
format: JSON-LD
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
# Structured Data — JSON-LD Schema Templates
|
|
9
|
-
|
|
10
|
-
Embed in `<script type="application/ld+json">` in `<head>` or before `</body>`.
|
|
11
|
-
|
|
12
|
-
## Article
|
|
13
|
-
|
|
14
|
-
```json
|
|
15
|
-
{
|
|
16
|
-
"@context": "https://schema.org",
|
|
17
|
-
"@type": "Article",
|
|
18
|
-
"headline": "Article Title (max 110 chars)",
|
|
19
|
-
"description": "Article summary (max 160 chars)",
|
|
20
|
-
"image": "https://example.com/article-image.jpg",
|
|
21
|
-
"author": {
|
|
22
|
-
"@type": "Person",
|
|
23
|
-
"name": "Author Name",
|
|
24
|
-
"url": "https://example.com/authors/name"
|
|
25
|
-
},
|
|
26
|
-
"publisher": {
|
|
27
|
-
"@type": "Organization",
|
|
28
|
-
"name": "Publisher Name",
|
|
29
|
-
"logo": {
|
|
30
|
-
"@type": "ImageObject",
|
|
31
|
-
"url": "https://example.com/logo.png"
|
|
32
|
-
}
|
|
33
|
-
},
|
|
34
|
-
"datePublished": "2024-01-15T08:00:00+00:00",
|
|
35
|
-
"dateModified": "2024-01-20T10:00:00+00:00",
|
|
36
|
-
"mainEntityOfPage": {
|
|
37
|
-
"@type": "WebPage",
|
|
38
|
-
"@id": "https://example.com/article-slug"
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
```
|
|
42
|
-
|
|
43
|
-
**Required by Google**: `headline`, `image`, `datePublished`, `author`
|
|
44
|
-
|
|
45
|
-
## Product
|
|
46
|
-
|
|
47
|
-
```json
|
|
48
|
-
{
|
|
49
|
-
"@context": "https://schema.org",
|
|
50
|
-
"@type": "Product",
|
|
51
|
-
"name": "Product Name",
|
|
52
|
-
"description": "Product description",
|
|
53
|
-
"image": ["https://example.com/product-1.jpg", "https://example.com/product-2.jpg"],
|
|
54
|
-
"sku": "PROD-123",
|
|
55
|
-
"brand": {
|
|
56
|
-
"@type": "Brand",
|
|
57
|
-
"name": "Brand Name"
|
|
58
|
-
},
|
|
59
|
-
"offers": {
|
|
60
|
-
"@type": "Offer",
|
|
61
|
-
"url": "https://example.com/product",
|
|
62
|
-
"priceCurrency": "USD",
|
|
63
|
-
"price": "29.99",
|
|
64
|
-
"availability": "https://schema.org/InStock",
|
|
65
|
-
"itemCondition": "https://schema.org/NewCondition"
|
|
66
|
-
},
|
|
67
|
-
"aggregateRating": {
|
|
68
|
-
"@type": "AggregateRating",
|
|
69
|
-
"ratingValue": "4.5",
|
|
70
|
-
"reviewCount": "127"
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
**Required by Google**: `name` + one of `review`, `aggregateRating`, or `offers`
|
|
76
|
-
|
|
77
|
-
## FAQ
|
|
78
|
-
|
|
79
|
-
```json
|
|
80
|
-
{
|
|
81
|
-
"@context": "https://schema.org",
|
|
82
|
-
"@type": "FAQPage",
|
|
83
|
-
"mainEntity": [
|
|
84
|
-
{
|
|
85
|
-
"@type": "Question",
|
|
86
|
-
"name": "What is the return policy?",
|
|
87
|
-
"acceptedAnswer": {
|
|
88
|
-
"@type": "Answer",
|
|
89
|
-
"text": "We accept returns within 30 days of purchase. Items must be unused and in original packaging."
|
|
90
|
-
}
|
|
91
|
-
},
|
|
92
|
-
{
|
|
93
|
-
"@type": "Question",
|
|
94
|
-
"name": "How long does shipping take?",
|
|
95
|
-
"acceptedAnswer": {
|
|
96
|
-
"@type": "Answer",
|
|
97
|
-
"text": "Standard shipping takes 3-5 business days. Express shipping is available for 1-2 day delivery."
|
|
98
|
-
}
|
|
99
|
-
}
|
|
100
|
-
]
|
|
101
|
-
}
|
|
102
|
-
```
|
|
103
|
-
|
|
104
|
-
**Note**: Each Q&A must appear as visible content on the page. Do not use for ad content.
|
|
105
|
-
|
|
106
|
-
## BreadcrumbList
|
|
107
|
-
|
|
108
|
-
```json
|
|
109
|
-
{
|
|
110
|
-
"@context": "https://schema.org",
|
|
111
|
-
"@type": "BreadcrumbList",
|
|
112
|
-
"itemListElement": [
|
|
113
|
-
{
|
|
114
|
-
"@type": "ListItem",
|
|
115
|
-
"position": 1,
|
|
116
|
-
"name": "Home",
|
|
117
|
-
"item": "https://example.com"
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
"@type": "ListItem",
|
|
121
|
-
"position": 2,
|
|
122
|
-
"name": "Category",
|
|
123
|
-
"item": "https://example.com/category"
|
|
124
|
-
},
|
|
125
|
-
{
|
|
126
|
-
"@type": "ListItem",
|
|
127
|
-
"position": 3,
|
|
128
|
-
"name": "Product Name",
|
|
129
|
-
"item": "https://example.com/category/product"
|
|
130
|
-
}
|
|
131
|
-
]
|
|
132
|
-
}
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
**Note**: `position` must be sequential starting at 1. Last item does not require `item` URL.
|
|
136
|
-
|
|
137
|
-
## Validation
|
|
138
|
-
|
|
139
|
-
| Tool | URL |
|
|
140
|
-
|------|-----|
|
|
141
|
-
| Google Rich Results Test | https://search.google.com/test/rich-results |
|
|
142
|
-
| Schema.org Validator | https://validator.schema.org |
|
|
143
|
-
| Chrome DevTools → Network | Filter for `application/ld+json` |
|
|
144
|
-
|
|
145
|
-
## Common Mistakes
|
|
146
|
-
|
|
147
|
-
| Mistake | Fix |
|
|
148
|
-
|---------|-----|
|
|
149
|
-
| Price without currency | Always include `priceCurrency` with `price` |
|
|
150
|
-
| Missing `datePublished` on Article | Required for Google News eligibility |
|
|
151
|
-
| FAQ content not visible on page | Google penalizes hidden Q&A markup |
|
|
152
|
-
| Breadcrumb positions not sequential | Use 1, 2, 3 — no skipping |
|
|
153
|
-
| Image URL not absolute | Always use full `https://` URLs |
|
|
1
|
+
---
|
|
2
|
+
name: structured-data
|
|
3
|
+
type: framework
|
|
4
|
+
applies-to: [seo-checklist]
|
|
5
|
+
format: JSON-LD
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Structured Data — JSON-LD Schema Templates
|
|
9
|
+
|
|
10
|
+
Embed in `<script type="application/ld+json">` in `<head>` or before `</body>`.
|
|
11
|
+
|
|
12
|
+
## Article
|
|
13
|
+
|
|
14
|
+
```json
|
|
15
|
+
{
|
|
16
|
+
"@context": "https://schema.org",
|
|
17
|
+
"@type": "Article",
|
|
18
|
+
"headline": "Article Title (max 110 chars)",
|
|
19
|
+
"description": "Article summary (max 160 chars)",
|
|
20
|
+
"image": "https://example.com/article-image.jpg",
|
|
21
|
+
"author": {
|
|
22
|
+
"@type": "Person",
|
|
23
|
+
"name": "Author Name",
|
|
24
|
+
"url": "https://example.com/authors/name"
|
|
25
|
+
},
|
|
26
|
+
"publisher": {
|
|
27
|
+
"@type": "Organization",
|
|
28
|
+
"name": "Publisher Name",
|
|
29
|
+
"logo": {
|
|
30
|
+
"@type": "ImageObject",
|
|
31
|
+
"url": "https://example.com/logo.png"
|
|
32
|
+
}
|
|
33
|
+
},
|
|
34
|
+
"datePublished": "2024-01-15T08:00:00+00:00",
|
|
35
|
+
"dateModified": "2024-01-20T10:00:00+00:00",
|
|
36
|
+
"mainEntityOfPage": {
|
|
37
|
+
"@type": "WebPage",
|
|
38
|
+
"@id": "https://example.com/article-slug"
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**Required by Google**: `headline`, `image`, `datePublished`, `author`
|
|
44
|
+
|
|
45
|
+
## Product
|
|
46
|
+
|
|
47
|
+
```json
|
|
48
|
+
{
|
|
49
|
+
"@context": "https://schema.org",
|
|
50
|
+
"@type": "Product",
|
|
51
|
+
"name": "Product Name",
|
|
52
|
+
"description": "Product description",
|
|
53
|
+
"image": ["https://example.com/product-1.jpg", "https://example.com/product-2.jpg"],
|
|
54
|
+
"sku": "PROD-123",
|
|
55
|
+
"brand": {
|
|
56
|
+
"@type": "Brand",
|
|
57
|
+
"name": "Brand Name"
|
|
58
|
+
},
|
|
59
|
+
"offers": {
|
|
60
|
+
"@type": "Offer",
|
|
61
|
+
"url": "https://example.com/product",
|
|
62
|
+
"priceCurrency": "USD",
|
|
63
|
+
"price": "29.99",
|
|
64
|
+
"availability": "https://schema.org/InStock",
|
|
65
|
+
"itemCondition": "https://schema.org/NewCondition"
|
|
66
|
+
},
|
|
67
|
+
"aggregateRating": {
|
|
68
|
+
"@type": "AggregateRating",
|
|
69
|
+
"ratingValue": "4.5",
|
|
70
|
+
"reviewCount": "127"
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
```
|
|
74
|
+
|
|
75
|
+
**Required by Google**: `name` + one of `review`, `aggregateRating`, or `offers`
|
|
76
|
+
|
|
77
|
+
## FAQ
|
|
78
|
+
|
|
79
|
+
```json
|
|
80
|
+
{
|
|
81
|
+
"@context": "https://schema.org",
|
|
82
|
+
"@type": "FAQPage",
|
|
83
|
+
"mainEntity": [
|
|
84
|
+
{
|
|
85
|
+
"@type": "Question",
|
|
86
|
+
"name": "What is the return policy?",
|
|
87
|
+
"acceptedAnswer": {
|
|
88
|
+
"@type": "Answer",
|
|
89
|
+
"text": "We accept returns within 30 days of purchase. Items must be unused and in original packaging."
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"@type": "Question",
|
|
94
|
+
"name": "How long does shipping take?",
|
|
95
|
+
"acceptedAnswer": {
|
|
96
|
+
"@type": "Answer",
|
|
97
|
+
"text": "Standard shipping takes 3-5 business days. Express shipping is available for 1-2 day delivery."
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
]
|
|
101
|
+
}
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
**Note**: Each Q&A must appear as visible content on the page. Do not use for ad content.
|
|
105
|
+
|
|
106
|
+
## BreadcrumbList
|
|
107
|
+
|
|
108
|
+
```json
|
|
109
|
+
{
|
|
110
|
+
"@context": "https://schema.org",
|
|
111
|
+
"@type": "BreadcrumbList",
|
|
112
|
+
"itemListElement": [
|
|
113
|
+
{
|
|
114
|
+
"@type": "ListItem",
|
|
115
|
+
"position": 1,
|
|
116
|
+
"name": "Home",
|
|
117
|
+
"item": "https://example.com"
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"@type": "ListItem",
|
|
121
|
+
"position": 2,
|
|
122
|
+
"name": "Category",
|
|
123
|
+
"item": "https://example.com/category"
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"@type": "ListItem",
|
|
127
|
+
"position": 3,
|
|
128
|
+
"name": "Product Name",
|
|
129
|
+
"item": "https://example.com/category/product"
|
|
130
|
+
}
|
|
131
|
+
]
|
|
132
|
+
}
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
**Note**: `position` must be sequential starting at 1. Last item does not require `item` URL.
|
|
136
|
+
|
|
137
|
+
## Validation
|
|
138
|
+
|
|
139
|
+
| Tool | URL |
|
|
140
|
+
|------|-----|
|
|
141
|
+
| Google Rich Results Test | https://search.google.com/test/rich-results |
|
|
142
|
+
| Schema.org Validator | https://validator.schema.org |
|
|
143
|
+
| Chrome DevTools → Network | Filter for `application/ld+json` |
|
|
144
|
+
|
|
145
|
+
## Common Mistakes
|
|
146
|
+
|
|
147
|
+
| Mistake | Fix |
|
|
148
|
+
|---------|-----|
|
|
149
|
+
| Price without currency | Always include `priceCurrency` with `price` |
|
|
150
|
+
| Missing `datePublished` on Article | Required for Google News eligibility |
|
|
151
|
+
| FAQ content not visible on page | Google penalizes hidden Q&A markup |
|
|
152
|
+
| Breadcrumb positions not sequential | Use 1, 2, 3 — no skipping |
|
|
153
|
+
| Image URL not absolute | Always use full `https://` URLs |
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
# Content SEO Checklist
|
|
2
|
-
|
|
3
|
-
## Heading Structure
|
|
4
|
-
|
|
5
|
-
- [ ] Single `<h1>` per page — matches primary keyword intent
|
|
6
|
-
- [ ] Logical hierarchy: `h1 → h2 → h3` (no skipping levels)
|
|
7
|
-
- [ ] `<h2>` tags cover major subtopics (crawlers use for content outline)
|
|
8
|
-
- [ ] No headings used purely for styling — use CSS classes instead
|
|
9
|
-
|
|
10
|
-
## Keyword Placement
|
|
11
|
-
|
|
12
|
-
- [ ] Primary keyword in `<title>`, `<h1>`, first 100 words of body
|
|
13
|
-
- [ ] Secondary keywords in `<h2>` tags and body naturally
|
|
14
|
-
- [ ] Keyword in image `alt` text where relevant (descriptive, not stuffed)
|
|
15
|
-
- [ ] URL slug contains primary keyword (lowercase, hyphens, no stop words)
|
|
16
|
-
|
|
17
|
-
## Internal Linking
|
|
18
|
-
|
|
19
|
-
- [ ] Every important page reachable within 3 clicks from homepage
|
|
20
|
-
- [ ] Anchor text is descriptive ("authentication guide") not generic ("click here")
|
|
21
|
-
- [ ] New content links back to related existing content
|
|
22
|
-
- [ ] Orphan pages (no inbound internal links) have at least one link added
|
|
23
|
-
|
|
24
|
-
## Content Quality Signals
|
|
25
|
-
|
|
26
|
-
- [ ] Word count appropriate for topic depth (informational: 1000+, landing: 300-600)
|
|
27
|
-
- [ ] No duplicate content across pages — each URL has unique value
|
|
28
|
-
- [ ] Pagination uses `rel="next"` / `rel="prev"` or canonical to main page
|
|
29
|
-
- [ ] Thin content pages (< 300 words) either expanded or `noindex` applied
|
|
30
|
-
|
|
31
|
-
## Images & Media
|
|
32
|
-
|
|
33
|
-
- [ ] Every `<img>` has descriptive `alt` text (empty `alt=""` for decorative images)
|
|
34
|
-
- [ ] File names descriptive: `product-dashboard-screenshot.webp` not `IMG_4821.jpg`
|
|
35
|
-
- [ ] Use WebP or AVIF format where possible
|
|
36
|
-
- [ ] Videos have transcript or caption for accessibility and crawlability
|
|
37
|
-
|
|
38
|
-
## Localization (if applicable)
|
|
39
|
-
|
|
40
|
-
- [ ] `hreflang` tags on all translated pages
|
|
41
|
-
- [ ] Each locale version has its own canonical URL
|
|
42
|
-
- [ ] `hreflang` includes `x-default` for language selector page
|
|
1
|
+
# Content SEO Checklist
|
|
2
|
+
|
|
3
|
+
## Heading Structure
|
|
4
|
+
|
|
5
|
+
- [ ] Single `<h1>` per page — matches primary keyword intent
|
|
6
|
+
- [ ] Logical hierarchy: `h1 → h2 → h3` (no skipping levels)
|
|
7
|
+
- [ ] `<h2>` tags cover major subtopics (crawlers use for content outline)
|
|
8
|
+
- [ ] No headings used purely for styling — use CSS classes instead
|
|
9
|
+
|
|
10
|
+
## Keyword Placement
|
|
11
|
+
|
|
12
|
+
- [ ] Primary keyword in `<title>`, `<h1>`, first 100 words of body
|
|
13
|
+
- [ ] Secondary keywords in `<h2>` tags and body naturally
|
|
14
|
+
- [ ] Keyword in image `alt` text where relevant (descriptive, not stuffed)
|
|
15
|
+
- [ ] URL slug contains primary keyword (lowercase, hyphens, no stop words)
|
|
16
|
+
|
|
17
|
+
## Internal Linking
|
|
18
|
+
|
|
19
|
+
- [ ] Every important page reachable within 3 clicks from homepage
|
|
20
|
+
- [ ] Anchor text is descriptive ("authentication guide") not generic ("click here")
|
|
21
|
+
- [ ] New content links back to related existing content
|
|
22
|
+
- [ ] Orphan pages (no inbound internal links) have at least one link added
|
|
23
|
+
|
|
24
|
+
## Content Quality Signals
|
|
25
|
+
|
|
26
|
+
- [ ] Word count appropriate for topic depth (informational: 1000+, landing: 300-600)
|
|
27
|
+
- [ ] No duplicate content across pages — each URL has unique value
|
|
28
|
+
- [ ] Pagination uses `rel="next"` / `rel="prev"` or canonical to main page
|
|
29
|
+
- [ ] Thin content pages (< 300 words) either expanded or `noindex` applied
|
|
30
|
+
|
|
31
|
+
## Images & Media
|
|
32
|
+
|
|
33
|
+
- [ ] Every `<img>` has descriptive `alt` text (empty `alt=""` for decorative images)
|
|
34
|
+
- [ ] File names descriptive: `product-dashboard-screenshot.webp` not `IMG_4821.jpg`
|
|
35
|
+
- [ ] Use WebP or AVIF format where possible
|
|
36
|
+
- [ ] Videos have transcript or caption for accessibility and crawlability
|
|
37
|
+
|
|
38
|
+
## Localization (if applicable)
|
|
39
|
+
|
|
40
|
+
- [ ] `hreflang` tags on all translated pages
|
|
41
|
+
- [ ] Each locale version has its own canonical URL
|
|
42
|
+
- [ ] `hreflang` includes `x-default` for language selector page
|