@nockdev/awf 6.2.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/.agent/build.yaml +178 -0
- package/.agent/config.yaml +235 -0
- package/.agent/core/ACTIVE_MEMORY.yaml +344 -0
- package/.agent/core/ARCH_REGISTRY.yaml +252 -0
- package/.agent/core/AUDIT_POLICY.md +68 -0
- package/.agent/core/BRANDING.yaml +185 -0
- package/.agent/core/CACHE.md +59 -0
- package/.agent/core/CHECKPOINT.yaml +153 -0
- package/.agent/core/CLEANUP_ENGINE.yaml +326 -0
- package/.agent/core/CODING_STYLES.yaml +346 -0
- package/.agent/core/COMMANDS.md +93 -0
- package/.agent/core/CONTEXT_INJECTOR.yaml +325 -0
- package/.agent/core/CONTEXT_LOADER.yaml +323 -0
- package/.agent/core/CONTEXT_OPTIMIZATION.yaml +286 -0
- package/.agent/core/CONTEXT_PRIORITY.yaml +357 -0
- package/.agent/core/CUSTOMIZE.md +138 -0
- package/.agent/core/DATA_SAFETY.md +92 -0
- package/.agent/core/FLOW_ENGINE.yaml +300 -0
- package/.agent/core/GRAPH_MEMORY.yaml +420 -0
- package/.agent/core/HSA.yaml +357 -0
- package/.agent/core/HYBRID_ROUTER.yaml +346 -0
- package/.agent/core/INTENT_DETECTION.yaml +384 -0
- package/.agent/core/LIBRARY_REGISTRY.yaml +401 -0
- package/.agent/core/MCP_TOOLS.yaml +414 -0
- package/.agent/core/MEMORY_CONSOLIDATION.yaml +352 -0
- package/.agent/core/MEMORY_ENGINE.yaml +353 -0
- package/.agent/core/MEMORY_PATHS.yaml +79 -0
- package/.agent/core/MEMORY_UTILS.yaml +212 -0
- package/.agent/core/PATTERNS.yaml +319 -0
- package/.agent/core/PERMISSIONS.md +100 -0
- package/.agent/core/README.md +91 -0
- package/.agent/core/REFLECTION_ENGINE.yaml +348 -0
- package/.agent/core/ROUTER.yaml +424 -0
- package/.agent/core/SCORING_FORMULA.yaml +103 -0
- package/.agent/core/SEMANTIC_ENGINE.yaml +162 -0
- package/.agent/core/SKILLS_FLOW.yaml +341 -0
- package/.agent/core/SKILL_SCHEMA.yaml +266 -0
- package/.agent/core/STATE_MACHINE.yaml +409 -0
- package/.agent/core/SUMMARIZATION_ENGINE.yaml +258 -0
- package/.agent/core/TEMPLATES.yaml +364 -0
- package/.agent/core/TOKEN_BUDGETS.yaml +157 -0
- package/.agent/core/TOKEN_LOADING.yaml +197 -0
- package/.agent/core/TOKEN_SUMMARY.yaml +121 -0
- package/.agent/core/VERSION.yaml +240 -0
- package/.agent/core/embeddings.json +2004 -0
- package/.agent/core/session_cache.json +50 -0
- package/.agent/i18n/README.md +30 -0
- package/.agent/i18n/en.yaml +302 -0
- package/.agent/i18n/vi.yaml +302 -0
- package/.agent/ide/README.md +47 -0
- package/.agent/ide/amazonq.json +35 -0
- package/.agent/ide/amp.json +35 -0
- package/.agent/ide/antigravity.json +47 -0
- package/.agent/ide/augment.json +35 -0
- package/.agent/ide/claude.json +42 -0
- package/.agent/ide/cline.json +34 -0
- package/.agent/ide/codex.json +37 -0
- package/.agent/ide/cody.json +35 -0
- package/.agent/ide/continue.json +35 -0
- package/.agent/ide/cursor.json +42 -0
- package/.agent/ide/gemini.json +46 -0
- package/.agent/ide/jetbrains.json +35 -0
- package/.agent/ide/kiro.json +35 -0
- package/.agent/ide/opencode.json +35 -0
- package/.agent/ide/roo.json +35 -0
- package/.agent/ide/tabnine.json +35 -0
- package/.agent/ide/trae.json +35 -0
- package/.agent/ide/vscode.json +34 -0
- package/.agent/ide/windsurf.json +56 -0
- package/.agent/ide/zed.json +36 -0
- package/.agent/manifest.yaml +416 -0
- package/.agent/memory/README.md +148 -0
- package/.agent/memory/active_memories.json +35 -0
- package/.agent/memory/archive/.gitkeep +0 -0
- package/.agent/memory/audit_summary.json +58 -0
- package/.agent/memory/cleanup_log.json +34 -0
- package/.agent/memory/consolidated.md +75 -0
- package/.agent/memory/core_memory/persona.json +30 -0
- package/.agent/memory/core_memory/project.json +25 -0
- package/.agent/memory/core_memory/rules.json +29 -0
- package/.agent/memory/core_memory/user.json +24 -0
- package/.agent/memory/decisions.md +40 -0
- package/.agent/memory/graph/knowledge_graph.json +12 -0
- package/.agent/memory/insights.md +52 -0
- package/.agent/memory/metrics.json +48 -0
- package/.agent/memory/patterns/errors.json +11 -0
- package/.agent/memory/patterns/successes.json +10 -0
- package/.agent/memory/session.md +64 -0
- package/.agent/memory/session_rules.json +19 -0
- package/.agent/memory/state.json +81 -0
- package/.agent/memory/vectors/README.md +129 -0
- package/.agent/personas/README.md +180 -0
- package/.agent/personas/architect.md +186 -0
- package/.agent/personas/auditor.md +222 -0
- package/.agent/personas/debugger.md +210 -0
- package/.agent/personas/developer.md +183 -0
- package/.agent/personas/devops.md +268 -0
- package/.agent/personas/documenter.md +262 -0
- package/.agent/personas/orchestrator.md +240 -0
- package/.agent/personas/persona.schema.yaml +209 -0
- package/.agent/personas/planner.md +171 -0
- package/.agent/personas/researcher.md +194 -0
- package/.agent/personas/security.md +212 -0
- package/.agent/personas/tester.md +247 -0
- package/.agent/rules/README.md +231 -0
- package/.agent/rules/SACRED_RULES.xml +142 -0
- package/.agent/rules/constitutional/tier-0-core.yaml +182 -0
- package/.agent/rules/constitutional/tier-1-safety.yaml +272 -0
- package/.agent/rules/constitutional/tier-2-execution.yaml +294 -0
- package/.agent/rules/data/build-systems.yaml +126 -0
- package/.agent/rules/data/quality-standards.json +59 -0
- package/.agent/rules/duplication-prevention.md +138 -0
- package/.agent/rules/incremental-changes.md +146 -0
- package/.agent/rules/modules/context-management.yaml +158 -0
- package/.agent/rules/modules/edit-verification.yaml +197 -0
- package/.agent/rules/modules/evidence.yaml +185 -0
- package/.agent/rules/modules/git-workflow.yaml +165 -0
- package/.agent/rules/modules/language.yaml +155 -0
- package/.agent/rules/modules/online-research.yaml +192 -0
- package/.agent/rules/modules/quality.yaml +185 -0
- package/.agent/rules/modules/reflection.yaml +209 -0
- package/.agent/rules/modules/stop-conditions.yaml +196 -0
- package/.agent/rules/modules/terminal-safety.yaml +229 -0
- package/.agent/rules/modules/versioning.yaml +97 -0
- package/.agent/rules/modules/yagni.yaml +167 -0
- package/.agent/rules/project-detection.md +317 -0
- package/.agent/rules/prompt-injection-guard.md +260 -0
- package/.agent/rules/shell-commands.md +210 -0
- package/.agent/rules/validation-framework.md +189 -0
- package/.agent/skills/DEVELOPMENT.yaml +226 -0
- package/.agent/skills/README.md +69 -0
- package/.agent/skills/_categories.yaml +145 -0
- package/.agent/skills/_router.yaml +232 -0
- package/.agent/skills/core/_index.yaml +12 -0
- package/.agent/skills/core/api-design/META.yaml +64 -0
- package/.agent/skills/core/api-design/SKILL.md +169 -0
- package/.agent/skills/core/api-design/data/api-versioning.yaml +217 -0
- package/.agent/skills/core/api-design/data/error-responses.yaml +135 -0
- package/.agent/skills/core/api-design/data/graphql-patterns.yaml +165 -0
- package/.agent/skills/core/api-design/data/grpc-patterns.yaml +165 -0
- package/.agent/skills/core/api-design/data/http-status-codes.yaml +176 -0
- package/.agent/skills/core/api-design/data/pagination.yaml +121 -0
- package/.agent/skills/core/api-design/data/rate-limiting.yaml +135 -0
- package/.agent/skills/core/api-design/data/rest-patterns.yaml +195 -0
- package/.agent/skills/core/api-design/data/test-apis.yaml +217 -0
- package/.agent/skills/core/authentication/META.yaml +73 -0
- package/.agent/skills/core/authentication/SKILL.md +166 -0
- package/.agent/skills/core/authentication/data/anti-patterns.yaml +135 -0
- package/.agent/skills/core/authentication/data/core-patterns.yaml +256 -0
- package/.agent/skills/core/authentication/data/jwt-patterns.yaml +255 -0
- package/.agent/skills/core/authentication/data/language-csharp.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-go.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-java.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-mobile.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-python.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-rust.yaml +215 -0
- package/.agent/skills/core/authentication/data/language-typescript.yaml +215 -0
- package/.agent/skills/core/authentication/data/mfa-patterns.yaml +175 -0
- package/.agent/skills/core/authentication/data/oauth-patterns.yaml +255 -0
- package/.agent/skills/core/authentication/data/oauth.yaml +248 -0
- package/.agent/skills/core/authentication/data/passkeys-webauthn.yaml +215 -0
- package/.agent/skills/core/authentication/data/passkeys.yaml +208 -0
- package/.agent/skills/core/authentication/data/password-patterns.yaml +175 -0
- package/.agent/skills/core/authentication/data/password.yaml +168 -0
- package/.agent/skills/core/authentication/data/session-patterns.yaml +215 -0
- package/.agent/skills/core/error-handling/META.yaml +71 -0
- package/.agent/skills/core/error-handling/SKILL.md +156 -0
- package/.agent/skills/core/error-handling/data/anti-patterns.yaml +105 -0
- package/.agent/skills/core/error-handling/data/api-error-patterns.yaml +135 -0
- package/.agent/skills/core/error-handling/data/core-patterns.yaml +226 -0
- package/.agent/skills/core/error-handling/data/error-codes.yaml +165 -0
- package/.agent/skills/core/error-handling/data/error-messages.yaml +165 -0
- package/.agent/skills/core/error-handling/data/language-c-cpp.yaml +226 -0
- package/.agent/skills/core/error-handling/data/language-go-rust.yaml +226 -0
- package/.agent/skills/core/error-handling/data/language-python-java.yaml +226 -0
- package/.agent/skills/core/error-handling/data/language-swift-kotlin.yaml +226 -0
- package/.agent/skills/core/error-handling/data/language-typescript-php-ruby.yaml +226 -0
- package/.agent/skills/core/error-handling/data/resilience-patterns.yaml +191 -0
- package/.agent/skills/core/error-handling/data/ui-error-patterns.yaml +135 -0
- package/.agent/skills/core/logging/META.yaml +73 -0
- package/.agent/skills/core/logging/SKILL.md +184 -0
- package/.agent/skills/core/logging/data/aggregation-patterns.yaml +191 -0
- package/.agent/skills/core/logging/data/anti-patterns.yaml +121 -0
- package/.agent/skills/core/logging/data/core-patterns.yaml +226 -0
- package/.agent/skills/core/logging/data/language-csharp.yaml +191 -0
- package/.agent/skills/core/logging/data/language-go.yaml +191 -0
- package/.agent/skills/core/logging/data/language-java.yaml +191 -0
- package/.agent/skills/core/logging/data/language-kotlin.yaml +156 -0
- package/.agent/skills/core/logging/data/language-others.yaml +184 -0
- package/.agent/skills/core/logging/data/language-python.yaml +191 -0
- package/.agent/skills/core/logging/data/language-rust.yaml +191 -0
- package/.agent/skills/core/logging/data/language-swift.yaml +156 -0
- package/.agent/skills/core/logging/data/language-typescript.yaml +191 -0
- package/.agent/skills/core/logging/data/otel-logging.yaml +156 -0
- package/.agent/skills/core/observability/META.yaml +76 -0
- package/.agent/skills/core/observability/SKILL.md +153 -0
- package/.agent/skills/core/observability/data/alerting-patterns.yaml +165 -0
- package/.agent/skills/core/observability/data/anti-patterns.yaml +105 -0
- package/.agent/skills/core/observability/data/core-patterns.yaml +195 -0
- package/.agent/skills/core/observability/data/language-cpp.yaml +165 -0
- package/.agent/skills/core/observability/data/language-csharp.yaml +165 -0
- package/.agent/skills/core/observability/data/language-go.yaml +165 -0
- package/.agent/skills/core/observability/data/language-java.yaml +165 -0
- package/.agent/skills/core/observability/data/language-others.yaml +255 -0
- package/.agent/skills/core/observability/data/language-python.yaml +165 -0
- package/.agent/skills/core/observability/data/language-rust.yaml +165 -0
- package/.agent/skills/core/observability/data/language-typescript.yaml +165 -0
- package/.agent/skills/core/observability/data/metrics-patterns.yaml +135 -0
- package/.agent/skills/core/observability/data/metrics-prometheus.yaml +165 -0
- package/.agent/skills/core/observability/data/otel-core.yaml +195 -0
- package/.agent/skills/core/observability/data/profiling-patterns.yaml +135 -0
- package/.agent/skills/core/observability/data/tracing-patterns.yaml +165 -0
- package/.agent/skills/core/observability/data/tracing-tools.yaml +135 -0
- package/.agent/skills/core/security/ADVANCED.md +269 -0
- package/.agent/skills/core/security/META.yaml +97 -0
- package/.agent/skills/core/security/SKILL.md +234 -0
- package/.agent/skills/core/security/data/ai-ml-security.yaml +261 -0
- package/.agent/skills/core/security/data/api-security.yaml +230 -0
- package/.agent/skills/core/security/data/auth-patterns.yaml +195 -0
- package/.agent/skills/core/security/data/binary-exploitation.yaml +339 -0
- package/.agent/skills/core/security/data/cloud-security.yaml +269 -0
- package/.agent/skills/core/security/data/cwe-top25.yaml +415 -0
- package/.agent/skills/core/security/data/language-specific/c-security.yaml +295 -0
- package/.agent/skills/core/security/data/language-specific/cpp-security.yaml +295 -0
- package/.agent/skills/core/security/data/language-specific/csharp-security.yaml +219 -0
- package/.agent/skills/core/security/data/language-specific/go-security.yaml +219 -0
- package/.agent/skills/core/security/data/language-specific/java-security.yaml +295 -0
- package/.agent/skills/core/security/data/language-specific/kotlin-security.yaml +198 -0
- package/.agent/skills/core/security/data/language-specific/php-security.yaml +219 -0
- package/.agent/skills/core/security/data/language-specific/python-security.yaml +295 -0
- package/.agent/skills/core/security/data/language-specific/ruby-security.yaml +198 -0
- package/.agent/skills/core/security/data/language-specific/rust-security.yaml +240 -0
- package/.agent/skills/core/security/data/language-specific/solidity-security.yaml +369 -0
- package/.agent/skills/core/security/data/language-specific/swift-security.yaml +198 -0
- package/.agent/skills/core/security/data/language-specific/typescript-security.yaml +295 -0
- package/.agent/skills/core/security/data/mobile-security.yaml +369 -0
- package/.agent/skills/core/security/data/network-security.yaml +297 -0
- package/.agent/skills/core/security/data/owasp-top10.yaml +171 -0
- package/.agent/skills/core/security/data/reverse-engineering.yaml +497 -0
- package/.agent/skills/core/security/data/supply-chain.yaml +219 -0
- package/.agent/skills/cross-cutting/_index.yaml +15 -0
- package/.agent/skills/cross-cutting/audit-pro/META.yaml +43 -0
- package/.agent/skills/cross-cutting/audit-pro/data/checklists.yaml +644 -0
- package/.agent/skills/cross-cutting/audit-pro/data/scoring.yaml +101 -0
- package/.agent/skills/cross-cutting/aws/META.yaml +75 -0
- package/.agent/skills/cross-cutting/aws/data/ai_ml.yaml +194 -0
- package/.agent/skills/cross-cutting/aws/data/compute.yaml +191 -0
- package/.agent/skills/cross-cutting/aws/data/kubernetes.yaml +199 -0
- package/.agent/skills/cross-cutting/aws/data/storage.yaml +174 -0
- package/.agent/skills/cross-cutting/bun/META.yaml +58 -0
- package/.agent/skills/cross-cutting/bun/SKILL.md +357 -0
- package/.agent/skills/cross-cutting/bun/data/database.yaml +85 -0
- package/.agent/skills/cross-cutting/bun/data/runtime.yaml +170 -0
- package/.agent/skills/cross-cutting/bun/data/tooling.yaml +192 -0
- package/.agent/skills/cross-cutting/ci-cd/META.yaml +60 -0
- package/.agent/skills/cross-cutting/ci-cd/data/github_actions.yaml +248 -0
- package/.agent/skills/cross-cutting/ci-cd/data/security.yaml +211 -0
- package/.agent/skills/cross-cutting/coding-rules/META.yaml +61 -0
- package/.agent/skills/cross-cutting/coding-rules/SKILL.md +171 -0
- package/.agent/skills/cross-cutting/coding-rules/data/architecture-patterns.yaml +96 -0
- package/.agent/skills/cross-cutting/coding-rules/data/build-systems.yaml +346 -0
- package/.agent/skills/cross-cutting/coding-rules/data/coding-rules.yaml +647 -0
- package/.agent/skills/cross-cutting/coding-rules/data/concurrency-patterns.yaml +108 -0
- package/.agent/skills/cross-cutting/coding-rules/data/design-patterns.yaml +260 -0
- package/.agent/skills/cross-cutting/coding-rules/data/framework-signatures.yaml +344 -0
- package/.agent/skills/cross-cutting/coding-rules/data/memory-management.yaml +108 -0
- package/.agent/skills/cross-cutting/coding-rules/data/naming-conventions.yaml +320 -0
- package/.agent/skills/cross-cutting/coding-rules/data/performance-benchmarks.yaml +164 -0
- package/.agent/skills/cross-cutting/coding-rules/data/solid-principles.yaml +80 -0
- package/.agent/skills/cross-cutting/coding-rules/data/test-frameworks.yaml +183 -0
- package/.agent/skills/cross-cutting/database/ADVANCED.md +465 -0
- package/.agent/skills/cross-cutting/database/META.yaml +22 -0
- package/.agent/skills/cross-cutting/database/SKILL.md +816 -0
- package/.agent/skills/cross-cutting/database/data/anti_patterns.yaml +116 -0
- package/.agent/skills/cross-cutting/database/data/distributed.yaml +152 -0
- package/.agent/skills/cross-cutting/database/data/mongodb.yaml +132 -0
- package/.agent/skills/cross-cutting/database/data/mysql.yaml +130 -0
- package/.agent/skills/cross-cutting/database/data/orm.yaml +104 -0
- package/.agent/skills/cross-cutting/database/data/postgresql.yaml +170 -0
- package/.agent/skills/cross-cutting/database/data/redis.yaml +129 -0
- package/.agent/skills/cross-cutting/deno/META.yaml +68 -0
- package/.agent/skills/cross-cutting/deno/SKILL.md +343 -0
- package/.agent/skills/cross-cutting/deno/data/runtime.yaml +260 -0
- package/.agent/skills/cross-cutting/deno/data/security.yaml +168 -0
- package/.agent/skills/cross-cutting/deno/data/tooling.yaml +133 -0
- package/.agent/skills/cross-cutting/docker/META.yaml +65 -0
- package/.agent/skills/cross-cutting/docker/data/build.yaml +197 -0
- package/.agent/skills/cross-cutting/docker/data/compose.yaml +229 -0
- package/.agent/skills/cross-cutting/docker/data/security.yaml +164 -0
- package/.agent/skills/cross-cutting/electron/META.yaml +174 -0
- package/.agent/skills/cross-cutting/electron/SKILL.md +862 -0
- package/.agent/skills/cross-cutting/electron/data/build.yaml +105 -0
- package/.agent/skills/cross-cutting/electron/data/crash.yaml +103 -0
- package/.agent/skills/cross-cutting/electron/data/ipc.yaml +85 -0
- package/.agent/skills/cross-cutting/electron/data/native.yaml +157 -0
- package/.agent/skills/cross-cutting/electron/data/security.yaml +89 -0
- package/.agent/skills/cross-cutting/electron/data/storage.yaml +100 -0
- package/.agent/skills/cross-cutting/electron/data/testing.yaml +103 -0
- package/.agent/skills/cross-cutting/electron/data/updates.yaml +99 -0
- package/.agent/skills/cross-cutting/electron/data/window.yaml +83 -0
- package/.agent/skills/cross-cutting/kubernetes/META.yaml +70 -0
- package/.agent/skills/cross-cutting/kubernetes/data/networking.yaml +270 -0
- package/.agent/skills/cross-cutting/kubernetes/data/scheduling.yaml +267 -0
- package/.agent/skills/cross-cutting/kubernetes/data/security.yaml +253 -0
- package/.agent/skills/cross-cutting/kubernetes/data/workloads.yaml +251 -0
- package/.agent/skills/cross-cutting/sql/META.yaml +88 -0
- package/.agent/skills/cross-cutting/sql/SKILL.md +296 -0
- package/.agent/skills/cross-cutting/sql/data/indexing.yaml +147 -0
- package/.agent/skills/cross-cutting/sql/data/json.yaml +156 -0
- package/.agent/skills/cross-cutting/sql/data/performance.yaml +204 -0
- package/.agent/skills/cross-cutting/sql/data/queries.yaml +150 -0
- package/.agent/skills/cross-cutting/tailwind/META.yaml +72 -0
- package/.agent/skills/cross-cutting/tailwind/SKILL.md +344 -0
- package/.agent/skills/cross-cutting/tailwind/data/build.yaml +143 -0
- package/.agent/skills/cross-cutting/tailwind/data/config.yaml +109 -0
- package/.agent/skills/cross-cutting/tailwind/data/migration.yaml +149 -0
- package/.agent/skills/cross-cutting/tailwind/data/responsive.yaml +148 -0
- package/.agent/skills/cross-cutting/tailwind/data/states.yaml +152 -0
- package/.agent/skills/cross-cutting/tailwind/data/theme.yaml +126 -0
- package/.agent/skills/cross-cutting/tailwind/data/utilities.yaml +182 -0
- package/.agent/skills/cross-cutting/tailwind/data/variants.yaml +154 -0
- package/.agent/skills/cross-cutting/testing/ADVANCED.md +245 -0
- package/.agent/skills/cross-cutting/testing/META.yaml +49 -0
- package/.agent/skills/cross-cutting/testing/SKILL.md +263 -0
- package/.agent/skills/cross-cutting/testing/data/frameworks.yaml +300 -0
- package/.agent/skills/cross-cutting/testing/data/patterns.yaml +168 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/META.yaml +108 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/SKILL.md +565 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/charts.yaml +331 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/colors.yaml +1226 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-decision.yaml +287 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-mapping.yaml +318 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/design-tokens.yaml +525 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-animation.yaml +232 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-architecture.yaml +140 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-colors.yaml +467 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/directory-structure.yaml +75 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/icons.yaml +918 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/implementation-strategy.yaml +107 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/landing.yaml +372 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-frameworks.yaml +195 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-guidelines.yaml +177 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/products.yaml +1339 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/prompts.yaml +180 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/react-performance.yaml +504 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/desktop.yaml +228 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/flutter.yaml +508 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/html-tailwind.yaml +543 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nextjs.yaml +515 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxt-ui.yaml +519 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxtjs.yaml +599 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react-native.yaml +496 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react.yaml +526 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/shadcn.yaml +616 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/svelte.yaml +520 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/swiftui.yaml +486 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/vue.yaml +485 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/styles.yaml +1473 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/typography.yaml +647 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ui-reasoning.yaml +1019 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ux-guidelines.yaml +1009 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/web-interface.yaml +347 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-310.pyc +0 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/core.cpython-314.pyc +0 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/__pycache__/design_system.cpython-314.pyc +0 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core.py +393 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core_legacy.py +303 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/design_system.py +496 -0
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/search.py +76 -0
- package/.agent/skills/cross-cutting/web-perf/META.yaml +92 -0
- package/.agent/skills/cross-cutting/web-perf/SKILL.md +181 -0
- package/.agent/skills/cross-cutting/web-perf/data/cls_optimization.yaml +189 -0
- package/.agent/skills/cross-cutting/web-perf/data/core_web_vitals.yaml +282 -0
- package/.agent/skills/cross-cutting/web-perf/data/inp_optimization.yaml +240 -0
- package/.agent/skills/cross-cutting/web-perf/data/lcp_optimization.yaml +202 -0
- package/.agent/skills/cross-cutting/web-perf/data/measurement.yaml +170 -0
- package/.agent/skills/devops/_index.yaml +9 -0
- package/.agent/skills/devops/aws/ADVANCED.md +547 -0
- package/.agent/skills/devops/aws/META.yaml +84 -0
- package/.agent/skills/devops/aws/SKILL.md +711 -0
- package/.agent/skills/devops/ci-cd/ADVANCED.md +529 -0
- package/.agent/skills/devops/ci-cd/META.yaml +21 -0
- package/.agent/skills/devops/ci-cd/SKILL.md +821 -0
- package/.agent/skills/devops/docker/ADVANCED.md +495 -0
- package/.agent/skills/devops/docker/META.yaml +20 -0
- package/.agent/skills/devops/docker/SKILL.md +653 -0
- package/.agent/skills/devops/kubernetes/ADVANCED.md +252 -0
- package/.agent/skills/devops/kubernetes/META.yaml +15 -0
- package/.agent/skills/devops/kubernetes/SKILL.md +621 -0
- package/.agent/skills/frameworks/_index.yaml +13 -0
- package/.agent/skills/frameworks/angular/META.yaml +70 -0
- package/.agent/skills/frameworks/angular/SKILL.md +319 -0
- package/.agent/skills/frameworks/angular/data/core.yaml +209 -0
- package/.agent/skills/frameworks/angular/data/performance.yaml +210 -0
- package/.agent/skills/frameworks/angular/data/server.yaml +175 -0
- package/.agent/skills/frameworks/flutter/ADVANCED.md +491 -0
- package/.agent/skills/frameworks/flutter/META.yaml +64 -0
- package/.agent/skills/frameworks/flutter/SKILL.md +541 -0
- package/.agent/skills/frameworks/flutter/data/core.yaml +210 -0
- package/.agent/skills/frameworks/flutter/data/platform.yaml +246 -0
- package/.agent/skills/frameworks/flutter/data/state.yaml +250 -0
- package/.agent/skills/frameworks/nextjs/ADVANCED.md +225 -0
- package/.agent/skills/frameworks/nextjs/META.yaml +67 -0
- package/.agent/skills/frameworks/nextjs/SKILL.md +593 -0
- package/.agent/skills/frameworks/nextjs/data/caching.yaml +210 -0
- package/.agent/skills/frameworks/nextjs/data/core.yaml +255 -0
- package/.agent/skills/frameworks/nextjs/data/server.yaml +248 -0
- package/.agent/skills/frameworks/nuxt/META.yaml +57 -0
- package/.agent/skills/frameworks/nuxt/SKILL.md +283 -0
- package/.agent/skills/frameworks/nuxt/data/core.yaml +309 -0
- package/.agent/skills/frameworks/nuxt/data/server.yaml +271 -0
- package/.agent/skills/frameworks/react/ADVANCED.md +676 -0
- package/.agent/skills/frameworks/react/META.yaml +60 -0
- package/.agent/skills/frameworks/react/SKILL.md +263 -0
- package/.agent/skills/frameworks/react/data/core.yaml +278 -0
- package/.agent/skills/frameworks/react/data/server.yaml +283 -0
- package/.agent/skills/frameworks/react-native/META.yaml +59 -0
- package/.agent/skills/frameworks/react-native/SKILL.md +301 -0
- package/.agent/skills/frameworks/react-native/data/core.yaml +260 -0
- package/.agent/skills/frameworks/react-native/data/platform.yaml +287 -0
- package/.agent/skills/frameworks/svelte/META.yaml +62 -0
- package/.agent/skills/frameworks/svelte/SKILL.md +398 -0
- package/.agent/skills/frameworks/svelte/data/runes.yaml +239 -0
- package/.agent/skills/frameworks/svelte/data/sveltekit.yaml +244 -0
- package/.agent/skills/frameworks/vue/ADVANCED.md +214 -0
- package/.agent/skills/frameworks/vue/META.yaml +58 -0
- package/.agent/skills/frameworks/vue/SKILL.md +356 -0
- package/.agent/skills/frameworks/vue/data/advanced.yaml +253 -0
- package/.agent/skills/frameworks/vue/data/core.yaml +270 -0
- package/.agent/skills/index.json +143 -0
- package/.agent/skills/languages/_index.yaml +33 -0
- package/.agent/skills/languages/asm/ADVANCED.md +750 -0
- package/.agent/skills/languages/asm/META.yaml +84 -0
- package/.agent/skills/languages/asm/SKILL.md +753 -0
- package/.agent/skills/languages/asm/data/advanced.yaml +295 -0
- package/.agent/skills/languages/asm/data/core.yaml +280 -0
- package/.agent/skills/languages/c/ADVANCED.md +625 -0
- package/.agent/skills/languages/c/META.yaml +58 -0
- package/.agent/skills/languages/c/SKILL.md +748 -0
- package/.agent/skills/languages/c/data/core.yaml +179 -0
- package/.agent/skills/languages/c/data/embedded.yaml +251 -0
- package/.agent/skills/languages/c/data/memory.yaml +253 -0
- package/.agent/skills/languages/clojure/META.yaml +13 -0
- package/.agent/skills/languages/clojure/SKILL.md +130 -0
- package/.agent/skills/languages/clojure/data/core.yaml +326 -0
- package/.agent/skills/languages/cpp/ADVANCED.md +457 -0
- package/.agent/skills/languages/cpp/META.yaml +61 -0
- package/.agent/skills/languages/cpp/SKILL.md +936 -0
- package/.agent/skills/languages/cpp/data/core.yaml +304 -0
- package/.agent/skills/languages/cpp/data/memory.yaml +247 -0
- package/.agent/skills/languages/cpp/data/modern.yaml +334 -0
- package/.agent/skills/languages/crystal/META.yaml +30 -0
- package/.agent/skills/languages/crystal/SKILL.md +117 -0
- package/.agent/skills/languages/crystal/data/async.yaml +264 -0
- package/.agent/skills/languages/crystal/data/core.yaml +279 -0
- package/.agent/skills/languages/csharp/ADVANCED.md +592 -0
- package/.agent/skills/languages/csharp/META.yaml +23 -0
- package/.agent/skills/languages/csharp/SKILL.md +620 -0
- package/.agent/skills/languages/csharp/data/aspnet.yaml +448 -0
- package/.agent/skills/languages/csharp/data/core.yaml +362 -0
- package/.agent/skills/languages/elixir/META.yaml +18 -0
- package/.agent/skills/languages/elixir/SKILL.md +368 -0
- package/.agent/skills/languages/elixir/data/core.yaml +392 -0
- package/.agent/skills/languages/fsharp/META.yaml +14 -0
- package/.agent/skills/languages/fsharp/SKILL.md +113 -0
- package/.agent/skills/languages/fsharp/data/core.yaml +396 -0
- package/.agent/skills/languages/go/ADVANCED.md +260 -0
- package/.agent/skills/languages/go/META.yaml +64 -0
- package/.agent/skills/languages/go/SKILL.md +489 -0
- package/.agent/skills/languages/go/data/concurrency.yaml +424 -0
- package/.agent/skills/languages/go/data/core.yaml +399 -0
- package/.agent/skills/languages/go/data/http.yaml +507 -0
- package/.agent/skills/languages/haskell/META.yaml +18 -0
- package/.agent/skills/languages/haskell/SKILL.md +305 -0
- package/.agent/skills/languages/haskell/data/core.yaml +347 -0
- package/.agent/skills/languages/java/ADVANCED.md +450 -0
- package/.agent/skills/languages/java/META.yaml +89 -0
- package/.agent/skills/languages/java/SKILL.md +495 -0
- package/.agent/skills/languages/java/data/core.yaml +307 -0
- package/.agent/skills/languages/java/data/spring.yaml +437 -0
- package/.agent/skills/languages/javascript/ADVANCED.md +530 -0
- package/.agent/skills/languages/javascript/META.yaml +105 -0
- package/.agent/skills/languages/javascript/SKILL.md +455 -0
- package/.agent/skills/languages/javascript/data/async.yaml +290 -0
- package/.agent/skills/languages/javascript/data/core.yaml +380 -0
- package/.agent/skills/languages/javascript/data/modern.yaml +269 -0
- package/.agent/skills/languages/julia/META.yaml +13 -0
- package/.agent/skills/languages/julia/SKILL.md +174 -0
- package/.agent/skills/languages/julia/data/core.yaml +356 -0
- package/.agent/skills/languages/kotlin/ADVANCED.md +539 -0
- package/.agent/skills/languages/kotlin/META.yaml +24 -0
- package/.agent/skills/languages/kotlin/SKILL.md +525 -0
- package/.agent/skills/languages/kotlin/data/android.yaml +495 -0
- package/.agent/skills/languages/kotlin/data/core.yaml +366 -0
- package/.agent/skills/languages/lua/ADVANCED.md +257 -0
- package/.agent/skills/languages/lua/META.yaml +58 -0
- package/.agent/skills/languages/lua/SKILL.md +492 -0
- package/.agent/skills/languages/lua/data/core.yaml +264 -0
- package/.agent/skills/languages/lua/data/embedding.yaml +300 -0
- package/.agent/skills/languages/nim/META.yaml +30 -0
- package/.agent/skills/languages/nim/SKILL.md +116 -0
- package/.agent/skills/languages/nim/data/async.yaml +257 -0
- package/.agent/skills/languages/nim/data/core.yaml +241 -0
- package/.agent/skills/languages/ocaml/META.yaml +13 -0
- package/.agent/skills/languages/ocaml/SKILL.md +123 -0
- package/.agent/skills/languages/ocaml/data/core.yaml +357 -0
- package/.agent/skills/languages/perl/META.yaml +13 -0
- package/.agent/skills/languages/perl/SKILL.md +115 -0
- package/.agent/skills/languages/perl/data/core.yaml +360 -0
- package/.agent/skills/languages/php/ADVANCED.md +199 -0
- package/.agent/skills/languages/php/META.yaml +18 -0
- package/.agent/skills/languages/php/SKILL.md +488 -0
- package/.agent/skills/languages/php/data/core.yaml +392 -0
- package/.agent/skills/languages/php/data/laravel.yaml +525 -0
- package/.agent/skills/languages/python/ADVANCED.md +207 -0
- package/.agent/skills/languages/python/META.yaml +91 -0
- package/.agent/skills/languages/python/SKILL.md +495 -0
- package/.agent/skills/languages/python/data/async.yaml +265 -0
- package/.agent/skills/languages/python/data/core.yaml +259 -0
- package/.agent/skills/languages/python/data/fastapi.yaml +296 -0
- package/.agent/skills/languages/python/data/testing.yaml +226 -0
- package/.agent/skills/languages/r/META.yaml +16 -0
- package/.agent/skills/languages/r/SKILL.md +348 -0
- package/.agent/skills/languages/r/data/core.yaml +355 -0
- package/.agent/skills/languages/ruby/ADVANCED.md +381 -0
- package/.agent/skills/languages/ruby/META.yaml +19 -0
- package/.agent/skills/languages/ruby/SKILL.md +417 -0
- package/.agent/skills/languages/ruby/data/core.yaml +448 -0
- package/.agent/skills/languages/ruby/data/rails.yaml +415 -0
- package/.agent/skills/languages/rust/ADVANCED.md +212 -0
- package/.agent/skills/languages/rust/META.yaml +87 -0
- package/.agent/skills/languages/rust/SKILL.md +377 -0
- package/.agent/skills/languages/rust/data/async.yaml +404 -0
- package/.agent/skills/languages/rust/data/axum.yaml +450 -0
- package/.agent/skills/languages/rust/data/core.yaml +356 -0
- package/.agent/skills/languages/scala/META.yaml +17 -0
- package/.agent/skills/languages/scala/SKILL.md +202 -0
- package/.agent/skills/languages/scala/data/core.yaml +349 -0
- package/.agent/skills/languages/solidity/META.yaml +13 -0
- package/.agent/skills/languages/solidity/SKILL.md +188 -0
- package/.agent/skills/languages/solidity/data/core.yaml +528 -0
- package/.agent/skills/languages/swift/ADVANCED.md +231 -0
- package/.agent/skills/languages/swift/META.yaml +18 -0
- package/.agent/skills/languages/swift/SKILL.md +342 -0
- package/.agent/skills/languages/swift/data/core.yaml +489 -0
- package/.agent/skills/languages/typescript/ADVANCED.md +186 -0
- package/.agent/skills/languages/typescript/META.yaml +92 -0
- package/.agent/skills/languages/typescript/SKILL.md +306 -0
- package/.agent/skills/languages/typescript/data/async.yaml +397 -0
- package/.agent/skills/languages/typescript/data/core.yaml +283 -0
- package/.agent/skills/languages/typescript/data/validation.yaml +338 -0
- package/.agent/skills/languages/zig/META.yaml +52 -0
- package/.agent/skills/languages/zig/SKILL.md +354 -0
- package/.agent/skills/languages/zig/data/async.yaml +314 -0
- package/.agent/skills/languages/zig/data/core.yaml +302 -0
- package/.agent/templates/README.md +42 -0
- package/.agent/templates/audit-report.md +153 -0
- package/.agent/templates/chains/debug/step1-reproduce.md +83 -0
- package/.agent/templates/chains/debug/step2-isolate.md +73 -0
- package/.agent/templates/chains/debug/step3-analyze.md +86 -0
- package/.agent/templates/chains/debug/step4-fix.md +85 -0
- package/.agent/templates/chains/debug/step5-verify.md +122 -0
- package/.agent/templates/chains/implement/step1-plan.md +88 -0
- package/.agent/templates/chains/implement/step2-code.md +87 -0
- package/.agent/templates/chains/implement/step3-test.md +87 -0
- package/.agent/templates/chains/implement/step4-doc.md +118 -0
- package/.agent/templates/chains/review/step1-understand.md +74 -0
- package/.agent/templates/chains/review/step2-analyze.md +110 -0
- package/.agent/templates/chains/review/step3-fix.md +93 -0
- package/.agent/templates/chains/review/step4-summary.md +104 -0
- package/.agent/templates/debug-report.md +50 -0
- package/.agent/templates/deploy-plan.md +54 -0
- package/.agent/templates/doc-template.md +57 -0
- package/.agent/templates/findings.md +122 -0
- package/.agent/templates/index.yaml +239 -0
- package/.agent/templates/migrate-plan.md +50 -0
- package/.agent/templates/phase-template.md +72 -0
- package/.agent/templates/project-plan.md +87 -0
- package/.agent/templates/prompts/context_block.md +114 -0
- package/.agent/templates/prompts/guardrails_block.md +116 -0
- package/.agent/templates/prompts/persona_base.md +155 -0
- package/.agent/templates/prompts/tools_block.md +137 -0
- package/.agent/templates/reflection/critic.md +110 -0
- package/.agent/templates/reflection/error_analysis.md +149 -0
- package/.agent/templates/reflection/success_analysis.md +174 -0
- package/.agent/templates/task-list.md +144 -0
- package/.agent/templates/tasks/audit.yaml +146 -0
- package/.agent/templates/tasks/bug_fix.yaml +121 -0
- package/.agent/templates/tasks/code_implementation.yaml +110 -0
- package/.agent/templates/tasks/refactor.yaml +157 -0
- package/.agent/templates/test-report.md +52 -0
- package/.agent/workflows/ap.md +135 -0
- package/.agent/workflows/code.md +130 -0
- package/.agent/workflows/debug.md +230 -0
- package/.agent/workflows/deploy.md +192 -0
- package/.agent/workflows/dev.md +137 -0
- package/.agent/workflows/doc.md +124 -0
- package/.agent/workflows/env.md +98 -0
- package/.agent/workflows/fix.md +76 -0
- package/.agent/workflows/generate.md +28 -0
- package/.agent/workflows/git.md +97 -0
- package/.agent/workflows/help.md +75 -0
- package/.agent/workflows/init.md +148 -0
- package/.agent/workflows/migrate.md +135 -0
- package/.agent/workflows/monitor.md +133 -0
- package/.agent/workflows/onboard.md +144 -0
- package/.agent/workflows/orchestrate.md +117 -0
- package/.agent/workflows/perf.md +106 -0
- package/.agent/workflows/plan.md +106 -0
- package/.agent/workflows/recap.md +101 -0
- package/.agent/workflows/refactor.md +161 -0
- package/.agent/workflows/revert.md +99 -0
- package/.agent/workflows/review.md +106 -0
- package/.agent/workflows/scaffold.md +119 -0
- package/.agent/workflows/security.md +186 -0
- package/.agent/workflows/status.md +103 -0
- package/.agent/workflows/test.md +157 -0
- package/.agent/workflows/think.md +126 -0
- package/.agent/workflows/upgrade.md +109 -0
- package/.agent/workflows/visualize.md +295 -0
- package/.agent/workflows/workflow.md +196 -0
- package/README.md +64 -0
- package/dist/commands/add.d.ts +2 -0
- package/dist/commands/add.d.ts.map +1 -0
- package/dist/commands/add.js +70 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/config.d.ts +4 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +152 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/doctor.d.ts +4 -0
- package/dist/commands/doctor.d.ts.map +1 -0
- package/dist/commands/doctor.js +98 -0
- package/dist/commands/doctor.js.map +1 -0
- package/dist/commands/hsa.d.ts +4 -0
- package/dist/commands/hsa.d.ts.map +1 -0
- package/dist/commands/hsa.js +194 -0
- package/dist/commands/hsa.js.map +1 -0
- package/dist/commands/info.d.ts +2 -0
- package/dist/commands/info.d.ts.map +1 -0
- package/dist/commands/info.js +149 -0
- package/dist/commands/info.js.map +1 -0
- package/dist/commands/init.d.ts +4 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +262 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/install-core.d.ts +4 -0
- package/dist/commands/install-core.d.ts.map +1 -0
- package/dist/commands/install-core.js +85 -0
- package/dist/commands/install-core.js.map +1 -0
- package/dist/commands/install-helpers.d.ts +27 -0
- package/dist/commands/install-helpers.d.ts.map +1 -0
- package/dist/commands/install-helpers.js +125 -0
- package/dist/commands/install-helpers.js.map +1 -0
- package/dist/commands/install-hsa.d.ts +18 -0
- package/dist/commands/install-hsa.d.ts.map +1 -0
- package/dist/commands/install-hsa.js +61 -0
- package/dist/commands/install-hsa.js.map +1 -0
- package/dist/commands/install.d.ts +4 -0
- package/dist/commands/install.d.ts.map +1 -0
- package/dist/commands/install.js +310 -0
- package/dist/commands/install.js.map +1 -0
- package/dist/commands/list.d.ts +4 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +91 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/mcp-registry.d.ts +48 -0
- package/dist/commands/mcp-registry.d.ts.map +1 -0
- package/dist/commands/mcp-registry.js +246 -0
- package/dist/commands/mcp-registry.js.map +1 -0
- package/dist/commands/mcp-writers.d.ts +20 -0
- package/dist/commands/mcp-writers.d.ts.map +1 -0
- package/dist/commands/mcp-writers.js +144 -0
- package/dist/commands/mcp-writers.js.map +1 -0
- package/dist/commands/mcp.d.ts +10 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +319 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/update.d.ts +4 -0
- package/dist/commands/update.d.ts.map +1 -0
- package/dist/commands/update.js +79 -0
- package/dist/commands/update.js.map +1 -0
- package/dist/constants/cursor-globs.d.ts +17 -0
- package/dist/constants/cursor-globs.d.ts.map +1 -0
- package/dist/constants/cursor-globs.js +62 -0
- package/dist/constants/cursor-globs.js.map +1 -0
- package/dist/constants/ide-install-specs.d.ts +36 -0
- package/dist/constants/ide-install-specs.d.ts.map +1 -0
- package/dist/constants/ide-install-specs.js +870 -0
- package/dist/constants/ide-install-specs.js.map +1 -0
- package/dist/constants/ides.d.ts +105 -0
- package/dist/constants/ides.d.ts.map +1 -0
- package/dist/constants/ides.js +412 -0
- package/dist/constants/ides.js.map +1 -0
- package/dist/constants/skills.d.ts +40 -0
- package/dist/constants/skills.d.ts.map +1 -0
- package/dist/constants/skills.js +78 -0
- package/dist/constants/skills.js.map +1 -0
- package/dist/constants.d.ts +39 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +75 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +8 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +122 -0
- package/dist/index.js.map +1 -0
- package/dist/types/flags.d.ts +47 -0
- package/dist/types/flags.d.ts.map +1 -0
- package/dist/types/flags.js +4 -0
- package/dist/types/flags.js.map +1 -0
- package/dist/types/ide-install.d.ts +175 -0
- package/dist/types/ide-install.d.ts.map +1 -0
- package/dist/types/ide-install.js +29 -0
- package/dist/types/ide-install.js.map +1 -0
- package/dist/utils/copy-helpers.d.ts +60 -0
- package/dist/utils/copy-helpers.d.ts.map +1 -0
- package/dist/utils/copy-helpers.js +617 -0
- package/dist/utils/copy-helpers.js.map +1 -0
- package/dist/utils/index.d.ts +3 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +5 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/validation.d.ts +29 -0
- package/dist/utils/validation.d.ts.map +1 -0
- package/dist/utils/validation.js +211 -0
- package/dist/utils/validation.js.map +1 -0
- package/package.json +64 -0
|
@@ -0,0 +1,181 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-perf
|
|
3
|
+
detect: ["lighthouse.json", "web-vitals.*", ".lighthouserc.js"]
|
|
4
|
+
version: "6.1.2"
|
|
5
|
+
category: support
|
|
6
|
+
tier: 1
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
# Web Performance Audit — DOMYH Awesome Code
|
|
10
|
+
|
|
11
|
+
> **Source**: Cloudflare Web-Perf Best Practices
|
|
12
|
+
> **Focus**: Core Web Vitals, Network Optimization, Accessibility
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 🎯 When to Use This Skill
|
|
17
|
+
|
|
18
|
+
Use for: Performance audits, Lighthouse optimization, page speed improvement.
|
|
19
|
+
**NOT for**: Functional testing (→ testing), code quality (→ coding-rules).
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## 📊 Core Web Vitals Thresholds
|
|
24
|
+
|
|
25
|
+
| Metric | Good | Needs Improvement | Poor |
|
|
26
|
+
| --------------- | ------- | ----------------- | ------- |
|
|
27
|
+
| **TTFB** | < 800ms | < 1.8s | > 1.8s |
|
|
28
|
+
| **FCP** | < 1.8s | < 3s | > 3s |
|
|
29
|
+
| **LCP** | < 2.5s | < 4s | > 4s |
|
|
30
|
+
| **INP** | < 200ms | < 500ms | > 500ms |
|
|
31
|
+
| **TBT** | < 200ms | < 600ms | > 600ms |
|
|
32
|
+
| **CLS** | < 0.1 | < 0.25 | > 0.25 |
|
|
33
|
+
| **Speed Index** | < 3.4s | < 5.8s | > 5.8s |
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## 🔄 5-PHASE AUDIT WORKFLOW
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
Performance Audit:
|
|
41
|
+
- [ ] Phase 1: Performance trace (navigate + record)
|
|
42
|
+
- [ ] Phase 2: Core Web Vitals analysis (LCP, CLS, TBT)
|
|
43
|
+
- [ ] Phase 3: Network analysis (render-blocking, chains)
|
|
44
|
+
- [ ] Phase 4: Accessibility snapshot
|
|
45
|
+
- [ ] Phase 5: Codebase analysis (if applicable)
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
## 📋 Phase 1: Performance Trace
|
|
51
|
+
|
|
52
|
+
```bash
|
|
53
|
+
# Using Chrome DevTools MCP
|
|
54
|
+
navigate_page(url: "<target-url>")
|
|
55
|
+
performance_start_trace(autoStop: true, reload: true)
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## 📋 Phase 2: Core Web Vitals
|
|
59
|
+
|
|
60
|
+
| Metric | Insight Name | What to Look For |
|
|
61
|
+
| ------ | ---------------- | ------------------------------------- |
|
|
62
|
+
| LCP | `LCPBreakdown` | TTFB, resource load, render delay |
|
|
63
|
+
| CLS | `CLSCulprits` | Images without dimensions, font swaps |
|
|
64
|
+
| TBT | `RenderBlocking` | CSS/JS blocking first paint |
|
|
65
|
+
|
|
66
|
+
## 📋 Phase 3: Network Analysis
|
|
67
|
+
|
|
68
|
+
**Look for:**
|
|
69
|
+
|
|
70
|
+
1. **Render-blocking resources** — JS/CSS without `async`/`defer`
|
|
71
|
+
2. **Network chains** — Resources discovered late
|
|
72
|
+
3. **Missing preloads** — Critical fonts, hero images
|
|
73
|
+
4. **Caching issues** — Missing `Cache-Control`
|
|
74
|
+
5. **Large payloads** — Uncompressed bundles
|
|
75
|
+
|
|
76
|
+
## 📋 Phase 4: Accessibility
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
take_snapshot(verbose: true)
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
**Flag:**
|
|
83
|
+
|
|
84
|
+
- Missing ARIA IDs
|
|
85
|
+
- Poor contrast ratios (< 4.5:1)
|
|
86
|
+
- Focus traps
|
|
87
|
+
- Interactive elements without names
|
|
88
|
+
|
|
89
|
+
## 📋 Phase 5: Codebase (if access)
|
|
90
|
+
|
|
91
|
+
| Framework | Config Files |
|
|
92
|
+
| --------- | ------------------- |
|
|
93
|
+
| Next.js | `next.config.js` |
|
|
94
|
+
| Vite | `vite.config.ts` |
|
|
95
|
+
| Webpack | `webpack.config.js` |
|
|
96
|
+
|
|
97
|
+
---
|
|
98
|
+
|
|
99
|
+
## ⚡ Quick Wins Checklist
|
|
100
|
+
|
|
101
|
+
```yaml
|
|
102
|
+
critical:
|
|
103
|
+
- "Use <link rel=preload> for LCP image/font"
|
|
104
|
+
- "Add async/defer to non-critical JS"
|
|
105
|
+
- "Set explicit width/height on images"
|
|
106
|
+
- "Enable gzip/brotli compression"
|
|
107
|
+
|
|
108
|
+
high:
|
|
109
|
+
- "Lazy load below-fold images"
|
|
110
|
+
- "Use next/image or WebP format"
|
|
111
|
+
- "Reduce main thread blocking"
|
|
112
|
+
- "Implement font-display: swap"
|
|
113
|
+
|
|
114
|
+
medium:
|
|
115
|
+
- "Add Cache-Control headers"
|
|
116
|
+
- "Use CDN for static assets"
|
|
117
|
+
- "Preconnect to third-party origins"
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
---
|
|
121
|
+
|
|
122
|
+
## 📊 Output Format
|
|
123
|
+
|
|
124
|
+
```markdown
|
|
125
|
+
## Core Web Vitals Summary
|
|
126
|
+
|
|
127
|
+
| Metric | Value | Rating |
|
|
128
|
+
| ------ | ----- | -------------------- |
|
|
129
|
+
| LCP | 2.1s | 🟢 Good |
|
|
130
|
+
| CLS | 0.05 | 🟢 Good |
|
|
131
|
+
| TBT | 450ms | 🟡 Needs Improvement |
|
|
132
|
+
|
|
133
|
+
## Top Issues
|
|
134
|
+
|
|
135
|
+
1. **Render-blocking CSS** (HIGH) — main.css blocks FCP
|
|
136
|
+
2. **Missing image dimensions** (MEDIUM) — hero.jpg causes CLS
|
|
137
|
+
|
|
138
|
+
## Recommendations
|
|
139
|
+
|
|
140
|
+
1. Add `media="print"` to non-critical CSS
|
|
141
|
+
2. Add `width` and `height` to all images
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
---
|
|
145
|
+
|
|
146
|
+
## 🔧 Commands
|
|
147
|
+
|
|
148
|
+
| Command | Description |
|
|
149
|
+
| --------------- | ---------------------- |
|
|
150
|
+
| `/perf [url]` | Full performance audit |
|
|
151
|
+
| `/perf vitals` | Core Web Vitals only |
|
|
152
|
+
| `/perf network` | Network analysis |
|
|
153
|
+
| `/perf bundle` | Bundle size analysis |
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## 🔌 HSA Integration
|
|
158
|
+
|
|
159
|
+
This skill is powered by HSA adapter for semantic search across 4 performance domains:
|
|
160
|
+
|
|
161
|
+
```python
|
|
162
|
+
from .agent.scripts.hsa.adapters import (
|
|
163
|
+
search_webperf_patterns,
|
|
164
|
+
get_cwv_thresholds,
|
|
165
|
+
get_optimization_for,
|
|
166
|
+
get_framework_config,
|
|
167
|
+
)
|
|
168
|
+
|
|
169
|
+
# Get Core Web Vitals thresholds
|
|
170
|
+
thresholds = get_cwv_thresholds()
|
|
171
|
+
# → {"LCP": {"good": "< 2.5s", "poor": "> 4.0s"}, ...}
|
|
172
|
+
|
|
173
|
+
# Get optimizations for specific metric
|
|
174
|
+
optimizations = get_optimization_for("LCP")
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
**Available Functions**: `search_webperf_patterns`, `get_cwv_thresholds`, `get_optimization_for`, `get_framework_config`, `get_audit_checklist`
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
_DOMYH Awesome Code • Web-Perf • Core Web Vitals • HSA-Powered_
|
|
@@ -0,0 +1,189 @@
|
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# CLS Optimization Patterns (Feb 2026)
|
|
3
|
+
# =============================================================================
|
|
4
|
+
# Cumulative Layout Shift prevention techniques
|
|
5
|
+
|
|
6
|
+
metadata:
|
|
7
|
+
skill: web-perf
|
|
8
|
+
domain: cls-optimization
|
|
9
|
+
version: "2025.1"
|
|
10
|
+
updated: "2026-02-05"
|
|
11
|
+
patterns_count: 6
|
|
12
|
+
|
|
13
|
+
patterns:
|
|
14
|
+
- id: cls001
|
|
15
|
+
name: Set Image Dimensions
|
|
16
|
+
category: CLS
|
|
17
|
+
impact: CRITICAL
|
|
18
|
+
description: Always specify width/height on images and video
|
|
19
|
+
text: image width height dimension aspect ratio cls shift
|
|
20
|
+
example: |
|
|
21
|
+
<!-- Always set dimensions -->
|
|
22
|
+
<img
|
|
23
|
+
src="product.webp"
|
|
24
|
+
width="300"
|
|
25
|
+
height="200"
|
|
26
|
+
alt="Product"
|
|
27
|
+
>
|
|
28
|
+
|
|
29
|
+
<!-- Or use aspect-ratio CSS -->
|
|
30
|
+
<style>
|
|
31
|
+
.image-container {
|
|
32
|
+
aspect-ratio: 16 / 9;
|
|
33
|
+
width: 100%;
|
|
34
|
+
}
|
|
35
|
+
.image-container img {
|
|
36
|
+
width: 100%;
|
|
37
|
+
height: 100%;
|
|
38
|
+
object-fit: cover;
|
|
39
|
+
}
|
|
40
|
+
</style>
|
|
41
|
+
severity: CRITICAL
|
|
42
|
+
docs_url: https://web.dev/optimize-cls/
|
|
43
|
+
|
|
44
|
+
- id: cls002
|
|
45
|
+
name: Reserve Space for Ads
|
|
46
|
+
category: CLS
|
|
47
|
+
impact: HIGH
|
|
48
|
+
description: Set min-height for ad containers before loading
|
|
49
|
+
text: ad slot placeholder reserve space container dynamic content
|
|
50
|
+
example: |
|
|
51
|
+
<!-- Reserve space for common ad sizes -->
|
|
52
|
+
<style>
|
|
53
|
+
.ad-banner {
|
|
54
|
+
min-height: 90px; /* Leaderboard */
|
|
55
|
+
width: 728px;
|
|
56
|
+
background: #f1f1f1;
|
|
57
|
+
}
|
|
58
|
+
.ad-sidebar {
|
|
59
|
+
min-height: 250px; /* Medium rectangle */
|
|
60
|
+
width: 300px;
|
|
61
|
+
}
|
|
62
|
+
</style>
|
|
63
|
+
|
|
64
|
+
<div class="ad-banner">
|
|
65
|
+
<!-- Ad loads here -->
|
|
66
|
+
</div>
|
|
67
|
+
severity: HIGH
|
|
68
|
+
docs_url: https://web.dev/optimize-cls/#ads-embeds-and-iframes-without-dimensions
|
|
69
|
+
|
|
70
|
+
- id: cls003
|
|
71
|
+
name: Web Font Loading Strategy
|
|
72
|
+
category: CLS
|
|
73
|
+
impact: HIGH
|
|
74
|
+
description: Use font-display:swap and size-adjust for minimal shift
|
|
75
|
+
text: font display swap size adjust fallback loading foit fout
|
|
76
|
+
example: |
|
|
77
|
+
@font-face {
|
|
78
|
+
font-family: 'Inter';
|
|
79
|
+
font-display: swap;
|
|
80
|
+
src: url('/fonts/inter.woff2') format('woff2');
|
|
81
|
+
/* Size-adjust to match fallback metrics */
|
|
82
|
+
size-adjust: 106%;
|
|
83
|
+
ascent-override: 90%;
|
|
84
|
+
descent-override: 22%;
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
body {
|
|
88
|
+
font-family: 'Inter', -apple-system, sans-serif;
|
|
89
|
+
}
|
|
90
|
+
|
|
91
|
+
<!-- Preload critical fonts -->
|
|
92
|
+
<link
|
|
93
|
+
rel="preload"
|
|
94
|
+
href="/fonts/inter.woff2"
|
|
95
|
+
as="font"
|
|
96
|
+
type="font/woff2"
|
|
97
|
+
crossorigin
|
|
98
|
+
>
|
|
99
|
+
severity: HIGH
|
|
100
|
+
docs_url: https://web.dev/optimize-cls/#web-fonts-causing-foutfoit
|
|
101
|
+
|
|
102
|
+
- id: cls004
|
|
103
|
+
name: Avoid Injecting Content Above
|
|
104
|
+
category: CLS
|
|
105
|
+
impact: HIGH
|
|
106
|
+
description: Don't dynamically insert content above existing content
|
|
107
|
+
text: inject content above insert shift notification banner toast
|
|
108
|
+
example: |
|
|
109
|
+
<!-- BAD: Banner pushes content down -->
|
|
110
|
+
<body>
|
|
111
|
+
<div id="banner"></div> <!-- Inserted later -->
|
|
112
|
+
<main>Content</main>
|
|
113
|
+
</body>
|
|
114
|
+
|
|
115
|
+
<!-- GOOD: Fixed position overlay -->
|
|
116
|
+
<style>
|
|
117
|
+
.notification {
|
|
118
|
+
position: fixed;
|
|
119
|
+
top: 0;
|
|
120
|
+
left: 0;
|
|
121
|
+
right: 0;
|
|
122
|
+
z-index: 1000;
|
|
123
|
+
}
|
|
124
|
+
</style>
|
|
125
|
+
|
|
126
|
+
<!-- Or reserve space from start -->
|
|
127
|
+
<div class="banner-slot" style="min-height: 50px;">
|
|
128
|
+
<!-- Banner loads here -->
|
|
129
|
+
</div>
|
|
130
|
+
severity: HIGH
|
|
131
|
+
docs_url: https://web.dev/optimize-cls/#dynamically-injected-content
|
|
132
|
+
|
|
133
|
+
- id: cls005
|
|
134
|
+
name: Transform for Animations
|
|
135
|
+
category: CLS
|
|
136
|
+
impact: MEDIUM
|
|
137
|
+
description: Use transform/opacity instead of properties that cause layout
|
|
138
|
+
text: animation transform opacity layout shift css transition
|
|
139
|
+
example: |
|
|
140
|
+
/* BAD: Animating layout properties */
|
|
141
|
+
.card:hover {
|
|
142
|
+
width: 110%; /* Triggers layout */
|
|
143
|
+
height: 110%; /* Triggers layout */
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/* GOOD: Use transform (GPU accelerated) */
|
|
147
|
+
.card:hover {
|
|
148
|
+
transform: scale(1.1);
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/* Smooth transitions without layout shift */
|
|
152
|
+
.modal-enter {
|
|
153
|
+
opacity: 0;
|
|
154
|
+
transform: translateY(-20px);
|
|
155
|
+
}
|
|
156
|
+
.modal-enter-active {
|
|
157
|
+
opacity: 1;
|
|
158
|
+
transform: translateY(0);
|
|
159
|
+
transition: all 0.3s ease-out;
|
|
160
|
+
}
|
|
161
|
+
severity: MEDIUM
|
|
162
|
+
docs_url: https://web.dev/animations-guide/
|
|
163
|
+
|
|
164
|
+
- id: cls006
|
|
165
|
+
name: BFCache Eligibility
|
|
166
|
+
category: CLS
|
|
167
|
+
impact: MEDIUM
|
|
168
|
+
description: Ensure pages qualify for back/forward cache
|
|
169
|
+
text: bfcache back forward cache eligibility navigation restore
|
|
170
|
+
example: |
|
|
171
|
+
// Avoid patterns that break BFCache:
|
|
172
|
+
|
|
173
|
+
// ❌ Unload event listener
|
|
174
|
+
window.addEventListener('unload', () => {});
|
|
175
|
+
|
|
176
|
+
// ✅ Use pagehide instead
|
|
177
|
+
window.addEventListener('pagehide', (e) => {
|
|
178
|
+
if (e.persisted) {
|
|
179
|
+
// Page is going to BFCache
|
|
180
|
+
}
|
|
181
|
+
});
|
|
182
|
+
|
|
183
|
+
// ❌ Cache-Control: no-store
|
|
184
|
+
// ✅ Cache-Control: max-age=0, must-revalidate
|
|
185
|
+
|
|
186
|
+
// Test BFCache eligibility:
|
|
187
|
+
// Chrome DevTools → Application → Back/forward cache
|
|
188
|
+
severity: MEDIUM
|
|
189
|
+
docs_url: https://web.dev/bfcache/
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# Core Web Vitals 2026 Patterns (Feb 2026)
|
|
3
|
+
# =============================================================================
|
|
4
|
+
# LCP, INP, CLS thresholds and measurement
|
|
5
|
+
|
|
6
|
+
metadata:
|
|
7
|
+
skill: web-perf
|
|
8
|
+
domain: core-web-vitals
|
|
9
|
+
version: "2026.1"
|
|
10
|
+
updated: "2026-02-05"
|
|
11
|
+
patterns_count: 10
|
|
12
|
+
|
|
13
|
+
patterns:
|
|
14
|
+
- id: cwv001
|
|
15
|
+
name: LCP (Largest Contentful Paint)
|
|
16
|
+
category: loading
|
|
17
|
+
threshold_good: "< 2.5s"
|
|
18
|
+
threshold_poor: "> 4.0s"
|
|
19
|
+
description: Time until main content visible (largest image or text block)
|
|
20
|
+
text: lcp largest contentful paint loading performance main content
|
|
21
|
+
impact: User perceives page as loaded
|
|
22
|
+
example: |
|
|
23
|
+
<!-- Optimize LCP element -->
|
|
24
|
+
<img
|
|
25
|
+
src="hero.webp"
|
|
26
|
+
fetchpriority="high"
|
|
27
|
+
width="1200"
|
|
28
|
+
height="600"
|
|
29
|
+
alt="Hero"
|
|
30
|
+
>
|
|
31
|
+
|
|
32
|
+
<!-- Preload critical resources -->
|
|
33
|
+
<link rel="preload" href="hero.webp" as="image">
|
|
34
|
+
severity: CRITICAL
|
|
35
|
+
docs_url: https://web.dev/lcp/
|
|
36
|
+
|
|
37
|
+
- id: cwv002
|
|
38
|
+
name: INP (Interaction to Next Paint)
|
|
39
|
+
category: responsiveness
|
|
40
|
+
threshold_good: "< 200ms"
|
|
41
|
+
threshold_poor: "> 500ms"
|
|
42
|
+
description: Overall responsiveness to user interactions (replaced FID in 2024)
|
|
43
|
+
text: inp interaction next paint responsiveness click tap input latency
|
|
44
|
+
impact: User feels site is responsive
|
|
45
|
+
example: |
|
|
46
|
+
// Break up long tasks
|
|
47
|
+
async function heavyOperation() {
|
|
48
|
+
const chunks = splitIntoChunks(data);
|
|
49
|
+
for (const chunk of chunks) {
|
|
50
|
+
processChunk(chunk);
|
|
51
|
+
// Yield to main thread
|
|
52
|
+
await scheduler.yield();
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
// Use requestIdleCallback for non-urgent work
|
|
57
|
+
requestIdleCallback(() => {
|
|
58
|
+
analytics.track('page_view');
|
|
59
|
+
});
|
|
60
|
+
severity: CRITICAL
|
|
61
|
+
docs_url: https://web.dev/inp/
|
|
62
|
+
|
|
63
|
+
- id: cwv003
|
|
64
|
+
name: CLS (Cumulative Layout Shift)
|
|
65
|
+
category: stability
|
|
66
|
+
threshold_good: "< 0.1"
|
|
67
|
+
threshold_poor: "> 0.25"
|
|
68
|
+
description: Visual stability - do elements shift while loading?
|
|
69
|
+
text: cls cumulative layout shift stability visual jank movement
|
|
70
|
+
impact: User doesn't misclick or lose reading position
|
|
71
|
+
example: |
|
|
72
|
+
<!-- Always set dimensions -->
|
|
73
|
+
<img
|
|
74
|
+
src="product.webp"
|
|
75
|
+
width="300"
|
|
76
|
+
height="200"
|
|
77
|
+
alt="Product"
|
|
78
|
+
>
|
|
79
|
+
|
|
80
|
+
<!-- Reserve space for dynamic content -->
|
|
81
|
+
<div class="ad-slot" style="min-height: 250px;">
|
|
82
|
+
<!-- Ad loads here -->
|
|
83
|
+
</div>
|
|
84
|
+
|
|
85
|
+
/* CSS for font loading */
|
|
86
|
+
@font-face {
|
|
87
|
+
font-family: 'Custom';
|
|
88
|
+
font-display: swap;
|
|
89
|
+
src: url('custom.woff2') format('woff2');
|
|
90
|
+
}
|
|
91
|
+
severity: CRITICAL
|
|
92
|
+
docs_url: https://web.dev/cls/
|
|
93
|
+
|
|
94
|
+
- id: cwv004
|
|
95
|
+
name: TTFB (Time to First Byte)
|
|
96
|
+
category: server
|
|
97
|
+
threshold_good: "< 800ms"
|
|
98
|
+
threshold_poor: "> 1800ms"
|
|
99
|
+
description: Server response time - affects all other metrics
|
|
100
|
+
text: ttfb time first byte server response latency backend
|
|
101
|
+
impact: Foundation for all loading metrics
|
|
102
|
+
example: |
|
|
103
|
+
# Server-side optimizations
|
|
104
|
+
- Use CDN with edge caching
|
|
105
|
+
- Optimize database queries
|
|
106
|
+
- Enable HTTP/2 or HTTP/3
|
|
107
|
+
- Add cache headers:
|
|
108
|
+
Cache-Control: public, max-age=31536000
|
|
109
|
+
|
|
110
|
+
# Preconnect to origins
|
|
111
|
+
<link rel="preconnect" href="https://api.example.com">
|
|
112
|
+
severity: HIGH
|
|
113
|
+
docs_url: https://web.dev/ttfb/
|
|
114
|
+
|
|
115
|
+
- id: cwv005
|
|
116
|
+
name: FCP (First Contentful Paint)
|
|
117
|
+
category: loading
|
|
118
|
+
threshold_good: "< 1.8s"
|
|
119
|
+
threshold_poor: "> 3.0s"
|
|
120
|
+
description: First content rendered - something is happening
|
|
121
|
+
text: fcp first contentful paint loading render start
|
|
122
|
+
impact: User sees progress, reducing abandonment
|
|
123
|
+
example: |
|
|
124
|
+
<!-- Inline critical CSS -->
|
|
125
|
+
<style>
|
|
126
|
+
.hero { background: #3b82f6; min-height: 100vh; }
|
|
127
|
+
.nav { height: 60px; background: #1e293b; }
|
|
128
|
+
</style>
|
|
129
|
+
|
|
130
|
+
<!-- Defer non-critical CSS -->
|
|
131
|
+
<link rel="preload" href="styles.css" as="style" onload="this.rel='stylesheet'">
|
|
132
|
+
severity: HIGH
|
|
133
|
+
docs_url: https://web.dev/fcp/
|
|
134
|
+
|
|
135
|
+
- id: cwv006
|
|
136
|
+
name: Mobile-First 2026
|
|
137
|
+
category: ranking
|
|
138
|
+
version: "2026"
|
|
139
|
+
description: Mobile Core Web Vitals carry more weight in 2026 rankings
|
|
140
|
+
text: mobile first ranking google seo performance scores mobile-centric
|
|
141
|
+
impact: Mobile scores increasingly important for SEO
|
|
142
|
+
example: |
|
|
143
|
+
<!-- Mobile-First Optimization Checklist -->
|
|
144
|
+
|
|
145
|
+
1. Test on real mobile devices, not just emulation
|
|
146
|
+
2. Use responsive images with srcset
|
|
147
|
+
3. Minimize JavaScript (target < 100KB gzipped)
|
|
148
|
+
4. Prioritize above-the-fold content
|
|
149
|
+
5. Use touch-appropriate interaction targets (48px+)
|
|
150
|
+
|
|
151
|
+
<!-- Lighthouse: Run mobile audit -->
|
|
152
|
+
lighthouse https://example.com --preset=desktop,mobile
|
|
153
|
+
|
|
154
|
+
<!-- Focus metrics for mobile -->
|
|
155
|
+
- LCP: Target < 2.0s (stricter than desktop)
|
|
156
|
+
- INP: Critical on touch devices
|
|
157
|
+
- CLS: Font loading crucial on slow connections
|
|
158
|
+
severity: CRITICAL
|
|
159
|
+
docs_url: https://web.dev/vitals/
|
|
160
|
+
|
|
161
|
+
- id: cwv007
|
|
162
|
+
name: Real User Monitoring (RUM)
|
|
163
|
+
category: measurement
|
|
164
|
+
version: "2025+"
|
|
165
|
+
description: Lab data + Field data = Complete picture (RUM increasingly important)
|
|
166
|
+
text: rum real user monitoring field data crux chrome ux report
|
|
167
|
+
impact: Google uses CrUX field data for rankings
|
|
168
|
+
example: |
|
|
169
|
+
// web-vitals library for field data
|
|
170
|
+
import { onLCP, onINP, onCLS } from 'web-vitals';
|
|
171
|
+
|
|
172
|
+
// Collect real user metrics
|
|
173
|
+
onLCP(metric => sendToAnalytics(metric));
|
|
174
|
+
onINP(metric => sendToAnalytics(metric));
|
|
175
|
+
onCLS(metric => sendToAnalytics(metric));
|
|
176
|
+
|
|
177
|
+
// Check CrUX data via PageSpeed Insights API
|
|
178
|
+
// or BigQuery for historical trends
|
|
179
|
+
|
|
180
|
+
// Key insight: Lab data (Lighthouse) != Field data (CrUX)
|
|
181
|
+
// Both are needed, but field data affects rankings
|
|
182
|
+
severity: HIGH
|
|
183
|
+
docs_url: https://web.dev/vitals-field-measurement-best-practices/
|
|
184
|
+
|
|
185
|
+
# ✅ NEW: 2026 INP Optimization & Trends
|
|
186
|
+
- id: cwv008
|
|
187
|
+
name: INP Optimization Strategies
|
|
188
|
+
category: responsiveness
|
|
189
|
+
version: "2026"
|
|
190
|
+
description: |
|
|
191
|
+
Deep INP optimization: Web Workers, DOM batching, input delay reduction.
|
|
192
|
+
INP stable since March 2024, now critical for rankings.
|
|
193
|
+
text: inp optimization web workers dom batching input delay main thread
|
|
194
|
+
example: |
|
|
195
|
+
// ✅ 1. Web Workers for CPU-intensive tasks
|
|
196
|
+
const worker = new Worker('processor.js');
|
|
197
|
+
worker.postMessage({ data: heavyData });
|
|
198
|
+
worker.onmessage = (e) => updateUI(e.data);
|
|
199
|
+
|
|
200
|
+
// ✅ 2. DOM Read/Write Batching (avoid layout thrashing)
|
|
201
|
+
// BAD: read-write interleaved
|
|
202
|
+
elements.forEach(el => {
|
|
203
|
+
const width = el.offsetWidth; // Force layout
|
|
204
|
+
el.style.width = width + 10; // Force layout again
|
|
205
|
+
});
|
|
206
|
+
|
|
207
|
+
// GOOD: batch reads, then writes
|
|
208
|
+
const widths = elements.map(el => el.offsetWidth);
|
|
209
|
+
elements.forEach((el, i) => el.style.width = widths[i] + 10);
|
|
210
|
+
|
|
211
|
+
// ✅ 3. Yield to main thread
|
|
212
|
+
await scheduler.yield();
|
|
213
|
+
|
|
214
|
+
// ✅ 4. Remove recurring timers that block interaction
|
|
215
|
+
// Avoid: setInterval(() => heavyWork(), 100);
|
|
216
|
+
severity: CRITICAL
|
|
217
|
+
docs_url: https://web.dev/optimize-inp/
|
|
218
|
+
|
|
219
|
+
- id: cwv009
|
|
220
|
+
name: Stricter 2026 Thresholds
|
|
221
|
+
category: ranking
|
|
222
|
+
version: "2026"
|
|
223
|
+
description: |
|
|
224
|
+
2026 trends: stricter thresholds expected, real user data > lab scores,
|
|
225
|
+
accessibility increasingly linked with performance.
|
|
226
|
+
text: thresholds 2026 stricter field data real user accessibility seo
|
|
227
|
+
example: |
|
|
228
|
+
// 2026 Performance Trends
|
|
229
|
+
|
|
230
|
+
// 1. Stricter thresholds coming
|
|
231
|
+
// - LCP: May tighten to < 2.0s for "good"
|
|
232
|
+
// - INP: < 200ms threshold now, may become < 150ms
|
|
233
|
+
|
|
234
|
+
// 2. Field data trumps lab data
|
|
235
|
+
// - Lighthouse 10.0 ≠ Real user experience
|
|
236
|
+
// - CrUX data directly affects rankings
|
|
237
|
+
|
|
238
|
+
// 3. Test on real devices
|
|
239
|
+
const isMobile = /Mobi|Android/i.test(navigator.userAgent);
|
|
240
|
+
if (isMobile) {
|
|
241
|
+
// Apply mobile-specific optimizations
|
|
242
|
+
}
|
|
243
|
+
|
|
244
|
+
// 4. Monitor with RUM
|
|
245
|
+
import { onINP } from 'web-vitals';
|
|
246
|
+
onINP(({ value, delta }) => {
|
|
247
|
+
if (value > 200) console.warn('Poor INP:', value);
|
|
248
|
+
});
|
|
249
|
+
severity: HIGH
|
|
250
|
+
docs_url: https://web.dev/vitals/
|
|
251
|
+
|
|
252
|
+
- id: cwv010
|
|
253
|
+
name: Accessibility-Performance Link
|
|
254
|
+
category: quality
|
|
255
|
+
version: "2026"
|
|
256
|
+
description: |
|
|
257
|
+
Cleaner content = faster + more accessible.
|
|
258
|
+
Heavy pop-ups, banners, animations hurt both.
|
|
259
|
+
text: accessibility a11y performance link clean content structure semantic
|
|
260
|
+
example: |
|
|
261
|
+
<!-- ✅ Clean structure = Fast + Accessible -->
|
|
262
|
+
|
|
263
|
+
<!-- 1. Reduce heavy pop-ups and banners -->
|
|
264
|
+
<!-- They hurt CLS and accessibility -->
|
|
265
|
+
|
|
266
|
+
<!-- 2. Prefer reduced motion -->
|
|
267
|
+
@media (prefers-reduced-motion: reduce) {
|
|
268
|
+
* { animation: none !important; }
|
|
269
|
+
}
|
|
270
|
+
|
|
271
|
+
<!-- 3. Semantic HTML = less JavaScript -->
|
|
272
|
+
<nav aria-label="Main">...</nav>
|
|
273
|
+
<main>...</main>
|
|
274
|
+
<footer>...</footer>
|
|
275
|
+
|
|
276
|
+
<!-- 4. Skip links for keyboard users -->
|
|
277
|
+
<a href="#main" class="skip-link">Skip to content</a>
|
|
278
|
+
|
|
279
|
+
<!-- 5. Focus visible for interactability -->
|
|
280
|
+
:focus-visible { outline: 2px solid #3b82f6; }
|
|
281
|
+
severity: HIGH
|
|
282
|
+
docs_url: https://web.dev/accessibility/
|