@nockdev/awf 6.2.0 → 6.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.agent/build.yaml +3 -3
- package/.agent/config.yaml +21 -146
- package/.agent/core/AGENT_BEHAVIOR.md +86 -0
- package/.agent/core/AUDIT_POLICY.md +1 -1
- package/.agent/core/CACHE.md +1 -1
- package/.agent/core/COMMANDS.md +16 -7
- package/.agent/core/CUSTOMIZE.md +61 -3
- package/.agent/core/DATA_SAFETY.md +1 -1
- package/.agent/core/MEMORY_PATHS.yaml +2 -2
- package/.agent/core/PERMISSIONS.md +1 -1
- package/.agent/core/README.md +1 -1
- package/.agent/core/VERSION.yaml +18 -8
- package/.agent/core/{ACTIVE_MEMORY.yaml → archive/ACTIVE_MEMORY.yaml} +2 -2
- package/.agent/core/{CHECKPOINT.yaml → archive/CHECKPOINT.yaml} +2 -2
- package/.agent/core/{CLEANUP_ENGINE.yaml → archive/CLEANUP_ENGINE.yaml} +2 -2
- package/.agent/core/{CONTEXT_INJECTOR.yaml → archive/CONTEXT_INJECTOR.yaml} +2 -2
- package/.agent/core/{CONTEXT_LOADER.yaml → archive/CONTEXT_LOADER.yaml} +1 -1
- package/.agent/core/{CONTEXT_OPTIMIZATION.yaml → archive/CONTEXT_OPTIMIZATION.yaml} +1 -1
- package/.agent/core/{CONTEXT_PRIORITY.yaml → archive/CONTEXT_PRIORITY.yaml} +2 -2
- package/.agent/core/{FLOW_ENGINE.yaml → archive/FLOW_ENGINE.yaml} +1 -1
- package/.agent/core/{GRAPH_MEMORY.yaml → archive/GRAPH_MEMORY.yaml} +1 -1
- package/.agent/core/{HYBRID_ROUTER.yaml → archive/HYBRID_ROUTER.yaml} +1 -1
- package/.agent/core/{INTENT_DETECTION.yaml → archive/INTENT_DETECTION.yaml} +1 -1
- package/.agent/core/{MEMORY_CONSOLIDATION.yaml → archive/MEMORY_CONSOLIDATION.yaml} +3 -3
- package/.agent/core/{MEMORY_ENGINE.yaml → archive/MEMORY_ENGINE.yaml} +2 -2
- package/.agent/core/{MEMORY_UTILS.yaml → archive/MEMORY_UTILS.yaml} +1 -1
- package/.agent/core/{REFLECTION_ENGINE.yaml → archive/REFLECTION_ENGINE.yaml} +1 -1
- package/.agent/core/{ROUTER.yaml → archive/ROUTER.yaml} +5 -5
- package/.agent/core/{SCORING_FORMULA.yaml → archive/SCORING_FORMULA.yaml} +2 -2
- package/.agent/core/{SEMANTIC_ENGINE.yaml → archive/SEMANTIC_ENGINE.yaml} +2 -2
- package/.agent/core/{SKILLS_FLOW.yaml → archive/SKILLS_FLOW.yaml} +2 -2
- package/.agent/core/{STATE_MACHINE.yaml → archive/STATE_MACHINE.yaml} +1 -1
- package/.agent/core/{SUMMARIZATION_ENGINE.yaml → archive/SUMMARIZATION_ENGINE.yaml} +2 -2
- package/.agent/core/{TOKEN_BUDGETS.yaml → archive/TOKEN_BUDGETS.yaml} +2 -2
- package/.agent/core/{TOKEN_LOADING.yaml → archive/TOKEN_LOADING.yaml} +2 -2
- package/.agent/core/{TOKEN_SUMMARY.yaml → archive/TOKEN_SUMMARY.yaml} +2 -2
- package/.agent/core/{CODING_STYLES.yaml → reference/CODING_STYLES.yaml} +1 -1
- package/.agent/core/{LIBRARY_REGISTRY.yaml → reference/LIBRARY_REGISTRY.yaml} +1 -1
- package/.agent/core/{MCP_TOOLS.yaml → reference/MCP_TOOLS.yaml} +2 -2
- package/.agent/core/{PATTERNS.yaml → reference/PATTERNS.yaml} +1 -1
- package/.agent/core/{SKILL_SCHEMA.yaml → reference/SKILL_SCHEMA.yaml} +2 -2
- package/.agent/core/{TEMPLATES.yaml → reference/TEMPLATES.yaml} +1 -1
- package/.agent/i18n/en.yaml +6 -6
- package/.agent/i18n/vi.yaml +6 -6
- package/.agent/ide/README.md +1 -1
- package/.agent/ide/amazonq.json +3 -3
- package/.agent/ide/amp.json +4 -3
- package/.agent/ide/antigravity.json +4 -3
- package/.agent/ide/augment.json +4 -4
- package/.agent/ide/claude.json +4 -3
- package/.agent/ide/cline.json +4 -3
- package/.agent/ide/codex.json +6 -1
- package/.agent/ide/cody.json +4 -3
- package/.agent/ide/continue.json +4 -3
- package/.agent/ide/cursor.json +4 -3
- package/.agent/ide/gemini.json +4 -3
- package/.agent/ide/jetbrains.json +4 -3
- package/.agent/ide/kiro.json +4 -3
- package/.agent/ide/opencode.json +4 -3
- package/.agent/ide/roo.json +4 -3
- package/.agent/ide/tabnine.json +4 -3
- package/.agent/ide/trae.json +4 -3
- package/.agent/ide/vscode.json +4 -3
- package/.agent/ide/windsurf.json +4 -3
- package/.agent/ide/zed.json +4 -3
- package/.agent/manifest.yaml +142 -34
- package/.agent/memory/core_memory/persona.json +2 -2
- package/.agent/memory/core_memory/project.json +1 -1
- package/.agent/memory/core_memory/rules.json +1 -1
- package/.agent/memory/core_memory/user.json +1 -1
- package/.agent/memory/graph/knowledge_graph.json +1 -1
- package/.agent/memory/patterns/errors.json +1 -1
- package/.agent/memory/patterns/successes.json +1 -1
- package/.agent/memory/state.json +3 -3
- package/.agent/personas/README.md +1 -1
- package/.agent/personas/architect.md +1 -1
- package/.agent/personas/auditor.md +1 -1
- package/.agent/personas/debugger.md +1 -1
- package/.agent/personas/developer.md +1 -1
- package/.agent/personas/devops.md +1 -1
- package/.agent/personas/documenter.md +1 -1
- package/.agent/personas/orchestrator.md +1 -1
- package/.agent/personas/persona.schema.yaml +1 -1
- package/.agent/personas/planner.md +1 -1
- package/.agent/personas/researcher.md +1 -1
- package/.agent/personas/security.md +1 -1
- package/.agent/personas/tester.md +1 -1
- package/.agent/private/README.md +74 -0
- package/.agent/private/_index.yaml +23 -0
- package/.agent/private/_template/META.yaml +38 -0
- package/.agent/private/_template/SKILL.md +43 -0
- package/.agent/private/_template/data/.gitkeep +0 -0
- package/.agent/private/autodomyh-api/META.yaml +48 -0
- package/.agent/private/autodomyh-api/SKILL.md +141 -0
- package/.agent/private/autodomyh-api/data/conventions.yaml +107 -0
- package/.agent/rules/README.md +24 -18
- package/.agent/rules/SACRED_RULES.xml +42 -36
- package/.agent/rules/{constitutional → archive/constitutional}/tier-0-core.yaml +6 -6
- package/.agent/rules/{constitutional → archive/constitutional}/tier-1-safety.yaml +6 -6
- package/.agent/rules/{constitutional → archive/constitutional}/tier-2-execution.yaml +7 -7
- package/.agent/rules/{modules → archive}/context-management.yaml +1 -1
- package/.agent/rules/{duplication-prevention.md → archive/duplication-prevention.md} +1 -1
- package/.agent/rules/{modules → archive}/evidence.yaml +1 -1
- package/.agent/rules/{project-detection.md → archive/project-detection.md} +1 -1
- package/.agent/rules/{modules → archive}/reflection.yaml +2 -2
- package/.agent/rules/{modules → archive}/versioning.yaml +3 -3
- package/.agent/rules/data/build-systems.yaml +2 -2
- package/.agent/rules/modules/agent-delegation.yaml +136 -0
- package/.agent/rules/modules/edit-verification.yaml +1 -1
- package/.agent/rules/modules/git-workflow.yaml +1 -1
- package/.agent/rules/modules/language.yaml +1 -1
- package/.agent/rules/modules/online-research.yaml +1 -1
- package/.agent/rules/modules/performance-optimization.yaml +141 -0
- package/.agent/rules/modules/quality.yaml +1 -1
- package/.agent/rules/modules/stop-conditions.yaml +1 -1
- package/.agent/rules/modules/terminal-safety.yaml +45 -1
- package/.agent/rules/modules/yagni.yaml +1 -1
- package/.agent/rules/validation-framework.md +1 -1
- package/.agent/skills/DEVELOPMENT.yaml +17 -6
- package/.agent/skills/README.md +19 -16
- package/.agent/skills/_categories.yaml +60 -8
- package/.agent/skills/_router.yaml +61 -19
- package/.agent/skills/ai-ml/ai-agents/META.yaml +127 -0
- package/.agent/skills/ai-ml/ai-agents/SKILL.md +139 -0
- package/.agent/skills/ai-ml/ai-agents/data/agent-rules.yaml +120 -0
- package/.agent/skills/ai-ml/ai-agents/data/llm-integration.yaml +129 -0
- package/.agent/skills/ai-ml/ai-agents/data/memory-patterns.yaml +123 -0
- package/.agent/skills/ai-ml/ai-agents/data/orchestration-patterns.yaml +101 -0
- package/.agent/skills/ai-ml/gemini-live/META.yaml +55 -0
- package/.agent/skills/ai-ml/gemini-live/SKILL.md +155 -0
- package/.agent/skills/ai-ml/gemini-live/data/code-execution.yaml +131 -0
- package/.agent/skills/ai-ml/gemini-live/data/context-caching.yaml +96 -0
- package/.agent/skills/ai-ml/gemini-live/data/grounding.yaml +97 -0
- package/.agent/skills/ai-ml/gemini-live/data/live-api.yaml +103 -0
- package/.agent/skills/ai-ml/gemini-media-gen/META.yaml +56 -0
- package/.agent/skills/ai-ml/gemini-media-gen/SKILL.md +128 -0
- package/.agent/skills/ai-ml/gemini-media-gen/data/files-api.yaml +96 -0
- package/.agent/skills/ai-ml/gemini-media-gen/data/image-models.yaml +112 -0
- package/.agent/skills/ai-ml/gemini-media-gen/data/image-prompts.yaml +131 -0
- package/.agent/skills/ai-ml/gemini-media-gen/data/video-generation.yaml +131 -0
- package/.agent/skills/ai-ml/gemini-tts/META.yaml +49 -0
- package/.agent/skills/ai-ml/gemini-tts/SKILL.md +124 -0
- package/.agent/skills/ai-ml/gemini-tts/data/markup-tags.yaml +95 -0
- package/.agent/skills/ai-ml/gemini-tts/data/models.yaml +124 -0
- package/.agent/skills/ai-ml/gemini-tts/data/prompting-patterns.yaml +81 -0
- package/.agent/skills/ai-ml/prompt-engineering/META.yaml +77 -0
- package/.agent/skills/ai-ml/prompt-engineering/SKILL.md +217 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/gemini3-patterns.yaml +170 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/output-patterns.yaml +73 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/provider-patterns.yaml +82 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/reasoning-patterns.yaml +86 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/safety-patterns.yaml +71 -0
- package/.agent/skills/ai-ml/prompt-engineering/data/tool-patterns.yaml +173 -0
- package/.agent/skills/ai-ml/rag-patterns/META.yaml +57 -0
- package/.agent/skills/ai-ml/rag-patterns/SKILL.md +92 -0
- package/.agent/skills/ai-ml/rag-patterns/data/chunking-strategies.yaml +71 -0
- package/.agent/skills/ai-ml/rag-patterns/data/embedding-models.yaml +76 -0
- package/.agent/skills/ai-ml/rag-patterns/data/evaluation.yaml +92 -0
- package/.agent/skills/ai-ml/rag-patterns/data/retrieval-patterns.yaml +101 -0
- package/.agent/skills/ai-ml/rag-patterns/data/vector-databases.yaml +103 -0
- package/.agent/skills/ai-ml/vector-search/META.yaml +63 -0
- package/.agent/skills/ai-ml/vector-search/SKILL.md +110 -0
- package/.agent/skills/ai-ml/vector-search/data/embedding-models.yaml +117 -0
- package/.agent/skills/ai-ml/vector-search/data/search-patterns.yaml +118 -0
- package/.agent/skills/ai-ml/vector-search/data/vector-dbs.yaml +155 -0
- package/.agent/skills/core/api-design/META.yaml +1 -5
- package/.agent/skills/core/api-design/SKILL.md +20 -26
- package/.agent/skills/core/api-design/data/api-versioning.yaml +211 -211
- package/.agent/skills/core/api-design/data/error-responses.yaml +129 -129
- package/.agent/skills/core/api-design/data/graphql-patterns.yaml +159 -159
- package/.agent/skills/core/api-design/data/grpc-patterns.yaml +159 -159
- package/.agent/skills/core/api-design/data/http-status-codes.yaml +170 -170
- package/.agent/skills/core/api-design/data/modern-api-patterns.yaml +160 -0
- package/.agent/skills/core/api-design/data/pagination.yaml +115 -115
- package/.agent/skills/core/api-design/data/rate-limiting.yaml +129 -129
- package/.agent/skills/core/api-design/data/rest-patterns.yaml +189 -189
- package/.agent/skills/core/api-design/data/test-apis.yaml +211 -211
- package/.agent/skills/core/authentication/META.yaml +1 -5
- package/.agent/skills/core/authentication/SKILL.md +36 -43
- package/.agent/skills/core/authentication/data/anti-patterns.yaml +129 -129
- package/.agent/skills/core/authentication/data/core-patterns.yaml +250 -250
- package/.agent/skills/core/authentication/data/jwt-patterns.yaml +249 -249
- package/.agent/skills/core/authentication/data/language-csharp.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-go.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-java.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-mobile.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-python.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-rust.yaml +209 -209
- package/.agent/skills/core/authentication/data/language-typescript.yaml +209 -209
- package/.agent/skills/core/authentication/data/mfa-patterns.yaml +169 -169
- package/.agent/skills/core/authentication/data/oauth-patterns.yaml +249 -249
- package/.agent/skills/core/authentication/data/oauth.yaml +243 -243
- package/.agent/skills/core/authentication/data/passkey-patterns.yaml +149 -0
- package/.agent/skills/core/authentication/data/passkeys-webauthn.yaml +209 -209
- package/.agent/skills/core/authentication/data/passkeys.yaml +203 -203
- package/.agent/skills/core/authentication/data/password-patterns.yaml +169 -169
- package/.agent/skills/core/authentication/data/password.yaml +163 -163
- package/.agent/skills/core/authentication/data/session-patterns.yaml +209 -209
- package/.agent/skills/core/error-handling/META.yaml +1 -5
- package/.agent/skills/core/error-handling/SKILL.md +21 -25
- package/.agent/skills/core/error-handling/data/anti-patterns.yaml +99 -99
- package/.agent/skills/core/error-handling/data/api-error-patterns.yaml +2 -2
- package/.agent/skills/core/error-handling/data/core-patterns.yaml +2 -2
- package/.agent/skills/core/error-handling/data/error-codes.yaml +159 -159
- package/.agent/skills/core/error-handling/data/error-messages.yaml +2 -2
- package/.agent/skills/core/error-handling/data/language-c-cpp.yaml +220 -220
- package/.agent/skills/core/error-handling/data/language-go-rust.yaml +2 -2
- package/.agent/skills/core/error-handling/data/language-python-java.yaml +220 -220
- package/.agent/skills/core/error-handling/data/language-swift-kotlin.yaml +220 -220
- package/.agent/skills/core/error-handling/data/language-typescript-php-ruby.yaml +220 -220
- package/.agent/skills/core/error-handling/data/resilience-patterns.yaml +2 -2
- package/.agent/skills/core/error-handling/data/ui-error-patterns.yaml +129 -129
- package/.agent/skills/core/logging/META.yaml +1 -5
- package/.agent/skills/core/logging/SKILL.md +28 -42
- package/.agent/skills/core/logging/data/aggregation-patterns.yaml +185 -185
- package/.agent/skills/core/logging/data/anti-patterns.yaml +115 -115
- package/.agent/skills/core/logging/data/core-patterns.yaml +220 -220
- package/.agent/skills/core/logging/data/language-csharp.yaml +185 -185
- package/.agent/skills/core/logging/data/language-go.yaml +185 -185
- package/.agent/skills/core/logging/data/language-java.yaml +185 -185
- package/.agent/skills/core/logging/data/language-kotlin.yaml +150 -150
- package/.agent/skills/core/logging/data/language-others.yaml +178 -178
- package/.agent/skills/core/logging/data/language-python.yaml +185 -185
- package/.agent/skills/core/logging/data/language-rust.yaml +185 -185
- package/.agent/skills/core/logging/data/language-swift.yaml +150 -150
- package/.agent/skills/core/logging/data/language-typescript.yaml +185 -185
- package/.agent/skills/core/logging/data/otel-logging.yaml +150 -150
- package/.agent/skills/core/observability/META.yaml +1 -5
- package/.agent/skills/core/observability/SKILL.md +29 -38
- package/.agent/skills/core/observability/data/alerting-patterns.yaml +159 -159
- package/.agent/skills/core/observability/data/anti-patterns.yaml +99 -99
- package/.agent/skills/core/observability/data/core-patterns.yaml +189 -189
- package/.agent/skills/core/observability/data/language-cpp.yaml +159 -159
- package/.agent/skills/core/observability/data/language-csharp.yaml +159 -159
- package/.agent/skills/core/observability/data/language-go.yaml +159 -159
- package/.agent/skills/core/observability/data/language-java.yaml +159 -159
- package/.agent/skills/core/observability/data/language-others.yaml +249 -249
- package/.agent/skills/core/observability/data/language-python.yaml +159 -159
- package/.agent/skills/core/observability/data/language-rust.yaml +159 -159
- package/.agent/skills/core/observability/data/language-typescript.yaml +159 -159
- package/.agent/skills/core/observability/data/metrics-patterns.yaml +129 -129
- package/.agent/skills/core/observability/data/metrics-prometheus.yaml +159 -159
- package/.agent/skills/core/observability/data/otel-core.yaml +189 -189
- package/.agent/skills/core/observability/data/profiling-patterns.yaml +129 -129
- package/.agent/skills/core/observability/data/tracing-patterns.yaml +159 -159
- package/.agent/skills/core/observability/data/tracing-tools.yaml +129 -129
- package/.agent/skills/core/security/META.yaml +1 -5
- package/.agent/skills/core/security/SKILL.md +25 -25
- package/.agent/skills/core/security/data/ai-ml-security.yaml +255 -255
- package/.agent/skills/core/security/data/api-security.yaml +224 -224
- package/.agent/skills/core/security/data/auth-patterns.yaml +189 -189
- package/.agent/skills/core/security/data/binary-exploitation.yaml +333 -333
- package/.agent/skills/core/security/data/cloud-security.yaml +263 -263
- package/.agent/skills/core/security/data/cwe-top25.yaml +409 -409
- package/.agent/skills/core/security/data/language-specific/c-security.yaml +289 -289
- package/.agent/skills/core/security/data/language-specific/cpp-security.yaml +289 -289
- package/.agent/skills/core/security/data/language-specific/csharp-security.yaml +213 -213
- package/.agent/skills/core/security/data/language-specific/go-security.yaml +213 -213
- package/.agent/skills/core/security/data/language-specific/java-security.yaml +289 -289
- package/.agent/skills/core/security/data/language-specific/kotlin-security.yaml +192 -192
- package/.agent/skills/core/security/data/language-specific/php-security.yaml +213 -213
- package/.agent/skills/core/security/data/language-specific/python-security.yaml +289 -289
- package/.agent/skills/core/security/data/language-specific/ruby-security.yaml +192 -192
- package/.agent/skills/core/security/data/language-specific/rust-security.yaml +234 -234
- package/.agent/skills/core/security/data/language-specific/solidity-security.yaml +363 -363
- package/.agent/skills/core/security/data/language-specific/swift-security.yaml +192 -192
- package/.agent/skills/core/security/data/language-specific/typescript-security.yaml +289 -289
- package/.agent/skills/core/security/data/mobile-security.yaml +363 -363
- package/.agent/skills/core/security/data/network-security.yaml +291 -291
- package/.agent/skills/core/security/data/owasp-llm-top10.yaml +122 -0
- package/.agent/skills/core/security/data/owasp-top10.yaml +165 -165
- package/.agent/skills/core/security/data/reverse-engineering.yaml +491 -491
- package/.agent/skills/core/security/data/supply-chain.yaml +213 -213
- package/.agent/skills/cross-cutting/_index.yaml +4 -2
- package/.agent/skills/cross-cutting/accessibility/META.yaml +45 -0
- package/.agent/skills/cross-cutting/accessibility/SKILL.md +121 -0
- package/.agent/skills/cross-cutting/accessibility/data/aria-patterns.yaml +88 -0
- package/.agent/skills/cross-cutting/accessibility/data/testing-tools.yaml +60 -0
- package/.agent/skills/cross-cutting/accessibility/data/wcag-guidelines.yaml +98 -0
- package/.agent/skills/cross-cutting/audit-pro/META.yaml +2 -6
- package/.agent/skills/cross-cutting/audit-pro/SKILL.md +61 -0
- package/.agent/skills/cross-cutting/bun/META.yaml +2 -8
- package/.agent/skills/cross-cutting/bun/SKILL.md +8 -12
- package/.agent/skills/cross-cutting/coding-rules/META.yaml +4 -11
- package/.agent/skills/cross-cutting/coding-rules/SKILL.md +38 -46
- package/.agent/skills/cross-cutting/coding-rules/data/adr-patterns.yaml +102 -0
- package/.agent/skills/cross-cutting/coding-rules/data/architecture-patterns.yaml +289 -90
- package/.agent/skills/cross-cutting/coding-rules/data/build-systems.yaml +340 -340
- package/.agent/skills/cross-cutting/coding-rules/data/coding-rules.yaml +641 -641
- package/.agent/skills/cross-cutting/coding-rules/data/concurrency-patterns.yaml +102 -102
- package/.agent/skills/cross-cutting/coding-rules/data/design-patterns.yaml +254 -254
- package/.agent/skills/cross-cutting/coding-rules/data/framework-directories.yaml +446 -0
- package/.agent/skills/cross-cutting/coding-rules/data/framework-signatures.yaml +338 -338
- package/.agent/skills/cross-cutting/coding-rules/data/memory-management.yaml +102 -102
- package/.agent/skills/cross-cutting/coding-rules/data/naming-conventions.yaml +314 -314
- package/.agent/skills/cross-cutting/coding-rules/data/performance-benchmarks.yaml +158 -158
- package/.agent/skills/cross-cutting/coding-rules/data/solid-principles.yaml +74 -74
- package/.agent/skills/cross-cutting/coding-rules/data/test-frameworks.yaml +177 -177
- package/.agent/skills/cross-cutting/database/META.yaml +2 -2
- package/.agent/skills/cross-cutting/database/SKILL.md +10 -19
- package/.agent/skills/cross-cutting/deno/META.yaml +2 -8
- package/.agent/skills/cross-cutting/deno/SKILL.md +8 -12
- package/.agent/skills/cross-cutting/domyh-design/ADVANCED.md +247 -0
- package/.agent/skills/cross-cutting/{ui-ux-pro-max → domyh-design}/META.yaml +44 -13
- package/.agent/skills/cross-cutting/domyh-design/SKILL.md +171 -0
- package/.agent/skills/cross-cutting/domyh-design/data/animation-ui-kits.yaml +198 -0
- package/.agent/skills/cross-cutting/domyh-design/data/charts.yaml +331 -0
- package/.agent/skills/cross-cutting/domyh-design/data/colors.yaml +1226 -0
- package/.agent/skills/cross-cutting/domyh-design/data/component-decision.yaml +287 -0
- package/.agent/skills/cross-cutting/domyh-design/data/component-effects.yaml +673 -0
- package/.agent/skills/cross-cutting/domyh-design/data/component-mapping.yaml +318 -0
- package/.agent/skills/cross-cutting/domyh-design/data/design-system-prompts.yaml +174 -0
- package/.agent/skills/cross-cutting/domyh-design/data/design-tokens.yaml +525 -0
- package/.agent/skills/cross-cutting/domyh-design/data/desktop-animation.yaml +680 -0
- package/.agent/skills/cross-cutting/domyh-design/data/desktop-architecture.yaml +140 -0
- package/.agent/skills/cross-cutting/{ui-ux-pro-max → domyh-design}/data/desktop-colors.yaml +4 -4
- package/.agent/skills/cross-cutting/domyh-design/data/directory-structure.yaml +80 -0
- package/.agent/skills/cross-cutting/domyh-design/data/icons.yaml +918 -0
- package/.agent/skills/cross-cutting/domyh-design/data/image-gen-prompts.yaml +678 -0
- package/.agent/skills/cross-cutting/domyh-design/data/image-gen-workflows.yaml +202 -0
- package/.agent/skills/cross-cutting/domyh-design/data/implementation-strategy.yaml +107 -0
- package/.agent/skills/cross-cutting/domyh-design/data/landing.yaml +373 -0
- package/.agent/skills/cross-cutting/domyh-design/data/micro-interactions.yaml +528 -0
- package/.agent/skills/cross-cutting/domyh-design/data/platform-frameworks.yaml +195 -0
- package/.agent/skills/cross-cutting/domyh-design/data/platform-guidelines.yaml +177 -0
- package/.agent/skills/cross-cutting/domyh-design/data/products.yaml +1339 -0
- package/.agent/skills/cross-cutting/domyh-design/data/prompts.yaml +207 -0
- package/.agent/skills/cross-cutting/domyh-design/data/react-performance.yaml +504 -0
- package/.agent/skills/cross-cutting/domyh-design/data/scroll-animation-patterns.yaml +398 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/desktop.yaml +228 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/flutter.yaml +508 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/html-tailwind.yaml +543 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/nextjs.yaml +515 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/nuxt-ui.yaml +519 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/nuxtjs.yaml +599 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/react-native.yaml +496 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/react.yaml +526 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/shadcn.yaml +616 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/svelte.yaml +520 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/swiftui.yaml +486 -0
- package/.agent/skills/cross-cutting/domyh-design/data/stacks/vue.yaml +485 -0
- package/.agent/skills/cross-cutting/domyh-design/data/styles.yaml +1473 -0
- package/.agent/skills/cross-cutting/domyh-design/data/tailwind-animation-plugins.yaml +462 -0
- package/.agent/skills/cross-cutting/domyh-design/data/typography.yaml +647 -0
- package/.agent/skills/cross-cutting/domyh-design/data/ui-reasoning.yaml +1019 -0
- package/.agent/skills/cross-cutting/domyh-design/data/ux-guidelines.yaml +1009 -0
- package/.agent/skills/cross-cutting/domyh-design/data/web-animation-libraries.yaml +541 -0
- package/.agent/skills/cross-cutting/domyh-design/data/web-interface.yaml +347 -0
- package/.agent/skills/cross-cutting/domyh-design/data/webview-animation-optimization.yaml +685 -0
- package/.agent/skills/cross-cutting/electron/SKILL.md +10 -14
- package/.agent/skills/cross-cutting/event-driven/META.yaml +108 -0
- package/.agent/skills/cross-cutting/event-driven/SKILL.md +123 -0
- package/.agent/skills/cross-cutting/event-driven/data/broker-comparison.yaml +123 -0
- package/.agent/skills/cross-cutting/event-driven/data/eda-patterns.yaml +120 -0
- package/.agent/skills/cross-cutting/event-driven/data/production-patterns.yaml +120 -0
- package/.agent/skills/cross-cutting/microservices/META.yaml +90 -0
- package/.agent/skills/cross-cutting/microservices/SKILL.md +120 -0
- package/.agent/skills/cross-cutting/microservices/data/communication.yaml +163 -0
- package/.agent/skills/cross-cutting/microservices/data/cqrs-patterns.yaml +199 -0
- package/.agent/skills/cross-cutting/microservices/data/deployment.yaml +153 -0
- package/.agent/skills/cross-cutting/microservices/data/event-sourcing.yaml +231 -0
- package/.agent/skills/cross-cutting/microservices/data/observability.yaml +152 -0
- package/.agent/skills/cross-cutting/microservices/data/resilience.yaml +189 -0
- package/.agent/skills/cross-cutting/microservices/data/saga-patterns.yaml +161 -0
- package/.agent/skills/cross-cutting/microservices/data/service-mesh.yaml +179 -0
- package/.agent/skills/cross-cutting/monorepo/META.yaml +54 -0
- package/.agent/skills/cross-cutting/monorepo/SKILL.md +108 -0
- package/.agent/skills/cross-cutting/monorepo/data/ci-cd-strategies.yaml +74 -0
- package/.agent/skills/cross-cutting/monorepo/data/nx-patterns.yaml +74 -0
- package/.agent/skills/cross-cutting/monorepo/data/turborepo-patterns.yaml +84 -0
- package/.agent/skills/cross-cutting/monorepo/data/versioning.yaml +83 -0
- package/.agent/skills/cross-cutting/monorepo/data/workspace-patterns.yaml +85 -0
- package/.agent/skills/cross-cutting/playwright/ADVANCED.md +289 -0
- package/.agent/skills/cross-cutting/playwright/META.yaml +90 -0
- package/.agent/skills/cross-cutting/playwright/SKILL.md +210 -0
- package/.agent/skills/cross-cutting/playwright/data/ai-agents.yaml +137 -0
- package/.agent/skills/cross-cutting/playwright/data/config-templates.yaml +141 -0
- package/.agent/skills/cross-cutting/playwright/data/interaction-checklist.yaml +398 -0
- package/.agent/skills/cross-cutting/playwright/data/locator-patterns.yaml +96 -0
- package/.agent/skills/cross-cutting/playwright/data/mcp-tools.yaml +153 -0
- package/.agent/skills/cross-cutting/playwright/data/open-source-tools.yaml +95 -0
- package/.agent/skills/cross-cutting/real-time/META.yaml +72 -0
- package/.agent/skills/cross-cutting/real-time/SKILL.md +128 -0
- package/.agent/skills/cross-cutting/real-time/data/socketio-patterns.yaml +165 -0
- package/.agent/skills/cross-cutting/real-time/data/sse-patterns.yaml +181 -0
- package/.agent/skills/cross-cutting/real-time/data/websocket-patterns.yaml +176 -0
- package/.agent/skills/cross-cutting/seo/META.yaml +47 -0
- package/.agent/skills/cross-cutting/seo/SKILL.md +114 -0
- package/.agent/skills/cross-cutting/seo/data/core-web-vitals.yaml +93 -0
- package/.agent/skills/cross-cutting/seo/data/structured-data.yaml +82 -0
- package/.agent/skills/cross-cutting/seo/data/technical-seo.yaml +75 -0
- package/.agent/skills/cross-cutting/sql/META.yaml +2 -8
- package/.agent/skills/cross-cutting/sql/SKILL.md +8 -12
- package/.agent/skills/cross-cutting/tailwind/META.yaml +3 -20
- package/.agent/skills/cross-cutting/tailwind/SKILL.md +13 -11
- package/.agent/skills/cross-cutting/tauri/META.yaml +75 -0
- package/.agent/skills/cross-cutting/tauri/SKILL.md +127 -0
- package/.agent/skills/cross-cutting/tauri/data/build.yaml +141 -0
- package/.agent/skills/cross-cutting/tauri/data/plugins.yaml +157 -0
- package/.agent/skills/cross-cutting/tauri/data/security.yaml +134 -0
- package/.agent/skills/cross-cutting/tdd-workflow/META.yaml +58 -0
- package/.agent/skills/cross-cutting/tdd-workflow/SKILL.md +128 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/anti-patterns.yaml +70 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/bdd-atdd-patterns.yaml +77 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/core-tdd-cycle.yaml +104 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/coverage-strategies.yaml +105 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/language-patterns.yaml +115 -0
- package/.agent/skills/cross-cutting/tdd-workflow/data/test-doubles.yaml +93 -0
- package/.agent/skills/cross-cutting/testing/META.yaml +1 -5
- package/.agent/skills/cross-cutting/testing/SKILL.md +13 -26
- package/.agent/skills/cross-cutting/testing/data/e2e-patterns.yaml +136 -0
- package/.agent/skills/cross-cutting/testing/data/frameworks.yaml +3 -3
- package/.agent/skills/cross-cutting/testing/data/patterns.yaml +149 -147
- package/.agent/skills/cross-cutting/wasm/META.yaml +47 -0
- package/.agent/skills/cross-cutting/wasm/SKILL.md +88 -0
- package/.agent/skills/cross-cutting/wasm/data/browser-patterns.yaml +106 -0
- package/.agent/skills/cross-cutting/wasm/data/component-model.yaml +85 -0
- package/.agent/skills/cross-cutting/wasm/data/server-patterns.yaml +89 -0
- package/.agent/skills/cross-cutting/web-perf/META.yaml +3 -9
- package/.agent/skills/cross-cutting/web-perf/SKILL.md +9 -18
- package/.agent/skills/devops/aws/META.yaml +48 -63
- package/.agent/skills/devops/aws/SKILL.md +39 -697
- package/.agent/skills/devops/azure/META.yaml +44 -0
- package/.agent/skills/devops/azure/SKILL.md +43 -0
- package/.agent/skills/devops/azure/data/cli.yaml +69 -0
- package/.agent/skills/devops/azure/data/compute.yaml +83 -0
- package/.agent/skills/devops/azure/data/data-services.yaml +126 -0
- package/.agent/skills/devops/ci-cd/META.yaml +47 -14
- package/.agent/skills/devops/ci-cd/SKILL.md +37 -807
- package/.agent/skills/devops/docker/META.yaml +53 -14
- package/.agent/skills/devops/docker/SKILL.md +35 -639
- package/.agent/skills/devops/gcp/META.yaml +43 -0
- package/.agent/skills/devops/gcp/SKILL.md +43 -0
- package/.agent/skills/devops/gcp/data/cli.yaml +39 -0
- package/.agent/skills/devops/gcp/data/compute.yaml +92 -0
- package/.agent/skills/devops/gcp/data/data-services.yaml +97 -0
- package/.agent/skills/devops/kubernetes/META.yaml +56 -7
- package/.agent/skills/devops/kubernetes/SKILL.md +38 -607
- package/.agent/skills/devops/terraform/META.yaml +47 -0
- package/.agent/skills/devops/terraform/SKILL.md +73 -0
- package/.agent/skills/devops/terraform/data/ci-cd.yaml +89 -0
- package/.agent/skills/devops/terraform/data/hcl-patterns.yaml +131 -0
- package/.agent/skills/devops/terraform/data/providers.yaml +96 -0
- package/.agent/skills/frameworks/angular/META.yaml +20 -6
- package/.agent/skills/frameworks/angular/SKILL.md +1 -1
- package/.agent/skills/frameworks/flutter/META.yaml +20 -6
- package/.agent/skills/frameworks/flutter/SKILL.md +1 -1
- package/.agent/skills/frameworks/nextjs/ADVANCED.md +2 -2
- package/.agent/skills/frameworks/nextjs/META.yaml +22 -8
- package/.agent/skills/frameworks/nextjs/SKILL.md +4 -4
- package/.agent/skills/frameworks/nextjs/data/server.yaml +4 -4
- package/.agent/skills/frameworks/nuxt/META.yaml +21 -7
- package/.agent/skills/frameworks/nuxt/SKILL.md +2 -2
- package/.agent/skills/frameworks/nuxt/data/core.yaml +14 -2
- package/.agent/skills/frameworks/nuxt/data/server.yaml +14 -2
- package/.agent/skills/frameworks/react/META.yaml +20 -7
- package/.agent/skills/frameworks/react/SKILL.md +7 -11
- package/.agent/skills/frameworks/react/data/core.yaml +14 -2
- package/.agent/skills/frameworks/react/data/server.yaml +16 -4
- package/.agent/skills/frameworks/react-native/META.yaml +19 -6
- package/.agent/skills/frameworks/react-native/SKILL.md +1 -1
- package/.agent/skills/frameworks/svelte/META.yaml +19 -6
- package/.agent/skills/frameworks/svelte/SKILL.md +1 -1
- package/.agent/skills/frameworks/vue/META.yaml +20 -8
- package/.agent/skills/frameworks/vue/SKILL.md +7 -7
- package/.agent/skills/frameworks/vue/data/advanced.yaml +19 -7
- package/.agent/skills/frameworks/vue/data/core.yaml +13 -1
- package/.agent/skills/index.json +67 -14
- package/.agent/skills/languages/asm/META.yaml +2 -8
- package/.agent/skills/languages/asm/SKILL.md +1 -1
- package/.agent/skills/languages/c/META.yaml +2 -8
- package/.agent/skills/languages/c/SKILL.md +1 -1
- package/.agent/skills/languages/clojure/META.yaml +2 -2
- package/.agent/skills/languages/clojure/SKILL.md +1 -1
- package/.agent/skills/languages/cpp/META.yaml +2 -8
- package/.agent/skills/languages/cpp/SKILL.md +1 -1
- package/.agent/skills/languages/crystal/META.yaml +2 -8
- package/.agent/skills/languages/crystal/SKILL.md +1 -1
- package/.agent/skills/languages/csharp/META.yaml +2 -2
- package/.agent/skills/languages/csharp/SKILL.md +1 -1
- package/.agent/skills/languages/elixir/META.yaml +2 -2
- package/.agent/skills/languages/elixir/SKILL.md +1 -1
- package/.agent/skills/languages/fsharp/META.yaml +2 -2
- package/.agent/skills/languages/fsharp/SKILL.md +1 -1
- package/.agent/skills/languages/go/META.yaml +2 -8
- package/.agent/skills/languages/go/SKILL.md +1 -1
- package/.agent/skills/languages/haskell/META.yaml +2 -2
- package/.agent/skills/languages/haskell/SKILL.md +1 -1
- package/.agent/skills/languages/java/META.yaml +2 -8
- package/.agent/skills/languages/java/SKILL.md +1 -1
- package/.agent/skills/languages/javascript/META.yaml +2 -8
- package/.agent/skills/languages/javascript/SKILL.md +1 -1
- package/.agent/skills/languages/julia/META.yaml +2 -2
- package/.agent/skills/languages/julia/SKILL.md +1 -1
- package/.agent/skills/languages/kotlin/META.yaml +2 -2
- package/.agent/skills/languages/kotlin/SKILL.md +1 -1
- package/.agent/skills/languages/lua/META.yaml +2 -8
- package/.agent/skills/languages/lua/SKILL.md +3 -3
- package/.agent/skills/languages/nim/META.yaml +2 -8
- package/.agent/skills/languages/nim/SKILL.md +1 -1
- package/.agent/skills/languages/ocaml/META.yaml +2 -2
- package/.agent/skills/languages/ocaml/SKILL.md +1 -1
- package/.agent/skills/languages/perl/META.yaml +2 -2
- package/.agent/skills/languages/perl/SKILL.md +1 -1
- package/.agent/skills/languages/php/META.yaml +2 -2
- package/.agent/skills/languages/php/SKILL.md +1 -1
- package/.agent/skills/languages/python/META.yaml +2 -8
- package/.agent/skills/languages/python/SKILL.md +1 -1
- package/.agent/skills/languages/r/META.yaml +2 -2
- package/.agent/skills/languages/r/SKILL.md +1 -1
- package/.agent/skills/languages/ruby/META.yaml +2 -2
- package/.agent/skills/languages/ruby/SKILL.md +1 -1
- package/.agent/skills/languages/rust/META.yaml +2 -8
- package/.agent/skills/languages/rust/SKILL.md +1 -1
- package/.agent/skills/languages/scala/META.yaml +2 -2
- package/.agent/skills/languages/scala/SKILL.md +1 -1
- package/.agent/skills/languages/solidity/META.yaml +2 -2
- package/.agent/skills/languages/solidity/SKILL.md +1 -1
- package/.agent/skills/languages/swift/META.yaml +2 -2
- package/.agent/skills/languages/swift/SKILL.md +1 -1
- package/.agent/skills/languages/typescript/META.yaml +2 -8
- package/.agent/skills/languages/typescript/SKILL.md +1 -1
- package/.agent/skills/languages/zig/META.yaml +5 -7
- package/.agent/skills/languages/zig/SKILL.md +1 -1
- package/.agent/skills/tooling/api-protocols/META.yaml +102 -0
- package/.agent/skills/tooling/api-protocols/SKILL.md +145 -0
- package/.agent/skills/tooling/api-protocols/data/graphql-patterns.yaml +115 -0
- package/.agent/skills/tooling/api-protocols/data/grpc-patterns.yaml +101 -0
- package/.agent/skills/tooling/api-protocols/data/trpc-patterns.yaml +97 -0
- package/.agent/skills/tooling/browser-agent/ADVANCED.md +242 -0
- package/.agent/skills/tooling/browser-agent/META.yaml +78 -0
- package/.agent/skills/tooling/browser-agent/SKILL.md +164 -0
- package/.agent/skills/tooling/browser-agent/data/element-discovery.yaml +208 -0
- package/.agent/skills/tooling/browser-agent/data/recording-patterns.yaml +74 -0
- package/.agent/skills/tooling/browser-agent/data/reporting-patterns.yaml +97 -0
- package/.agent/skills/tooling/browser-agent/data/subagent-patterns.yaml +158 -0
- package/.agent/skills/tooling/browser-agent/data/verification-flow.yaml +209 -0
- package/.agent/skills/tooling/cli-dev/META.yaml +55 -0
- package/.agent/skills/tooling/cli-dev/SKILL.md +83 -0
- package/.agent/skills/tooling/cli-dev/data/frameworks.yaml +128 -0
- package/.agent/skills/tooling/cli-dev/data/output-formats.yaml +58 -0
- package/.agent/skills/tooling/cli-dev/data/ux-patterns.yaml +97 -0
- package/.agent/skills/tooling/ide-extension/META.yaml +72 -0
- package/.agent/skills/tooling/ide-extension/SKILL.md +108 -0
- package/.agent/skills/tooling/ide-extension/data/jetbrains-patterns.yaml +118 -0
- package/.agent/skills/tooling/ide-extension/data/lsp-patterns.yaml +126 -0
- package/.agent/skills/tooling/ide-extension/data/vscode-patterns.yaml +172 -0
- package/.agent/skills/tooling/mcp/META.yaml +80 -0
- package/.agent/skills/tooling/mcp/SKILL.md +114 -0
- package/.agent/skills/tooling/mcp/data/security.yaml +116 -0
- package/.agent/skills/tooling/mcp/data/tool-design.yaml +124 -0
- package/.agent/skills/tooling/mcp/data/transport-patterns.yaml +95 -0
- package/.agent/templates/README.md +2 -2
- package/.agent/templates/debug-report.md +1 -1
- package/.agent/templates/deploy-plan.md +1 -1
- package/.agent/templates/doc-template.md +1 -1
- package/.agent/templates/index.yaml +2 -2
- package/.agent/templates/migrate-plan.md +1 -1
- package/.agent/templates/phase-template.md +1 -1
- package/.agent/templates/tasks/audit.yaml +1 -1
- package/.agent/templates/tasks/bug_fix.yaml +1 -1
- package/.agent/templates/tasks/code_implementation.yaml +1 -1
- package/.agent/templates/tasks/refactor.yaml +1 -1
- package/.agent/templates/test-report.md +1 -1
- package/.agent/workflows/code.md +22 -1
- package/.agent/workflows/deploy.md +5 -1
- package/.agent/workflows/e2e.md +112 -0
- package/.agent/workflows/fix.md +1 -1
- package/.agent/workflows/prompt.md +325 -0
- package/.agent/workflows/scaffold.md +1 -1
- package/.agent/workflows/tdd.md +108 -0
- package/.agent/workflows/verify.md +116 -0
- package/.agent/workflows/visualize.md +50 -18
- package/README.md +16 -13
- package/configs/aider/root.CONVENTIONS.md +51 -0
- package/configs/amazonq/root.amazonq.md +51 -0
- package/configs/amp/root.AGENTS.md +51 -0
- package/configs/antigravity/root.GEMINI.md +51 -0
- package/configs/augment/root.guidelines.md +51 -0
- package/configs/claude/root.CLAUDE.md +51 -0
- package/configs/cline/root.clinerules.md +51 -0
- package/configs/coderabbit/root.coderabbit.yaml +52 -0
- package/configs/codex/root.AGENTS.md +51 -0
- package/configs/cody/root.commands.json +76 -0
- package/configs/continue/root.continue.md +51 -0
- package/configs/copilot/root.copilot-instructions.md +51 -0
- package/configs/cursor/root.cursorrules +51 -0
- package/configs/gemini/root.GEMINI.md +51 -0
- package/configs/jetbrains/root.guidelines.md +51 -0
- package/configs/opencode/root.opencode.json +24 -0
- package/configs/roo/root.roorules.md +51 -0
- package/configs/tabnine/root.guidelines.md +51 -0
- package/configs/vscode/root.copilot-instructions.md +51 -0
- package/configs/windsurf/root.windsurfrules +51 -0
- package/configs/zed/root.settings.json +15 -0
- package/dist/commands/add.d.ts.map +1 -1
- package/dist/commands/add.js +9 -1
- package/dist/commands/add.js.map +1 -1
- package/dist/commands/config.d.ts.map +1 -1
- package/dist/commands/config.js +24 -8
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/hsa.d.ts.map +1 -1
- package/dist/commands/hsa.js +106 -20
- package/dist/commands/hsa.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +62 -69
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/install-core.d.ts +2 -1
- package/dist/commands/install-core.d.ts.map +1 -1
- package/dist/commands/install-core.js +43 -16
- package/dist/commands/install-core.js.map +1 -1
- package/dist/commands/install-helpers.d.ts.map +1 -1
- package/dist/commands/install-helpers.js +25 -2
- package/dist/commands/install-helpers.js.map +1 -1
- package/dist/commands/install-hsa.d.ts +2 -5
- package/dist/commands/install-hsa.d.ts.map +1 -1
- package/dist/commands/install-hsa.js +2 -5
- package/dist/commands/install-hsa.js.map +1 -1
- package/dist/commands/install.d.ts +27 -0
- package/dist/commands/install.d.ts.map +1 -1
- package/dist/commands/install.js +68 -20
- package/dist/commands/install.js.map +1 -1
- package/dist/commands/list.d.ts.map +1 -1
- package/dist/commands/list.js +2 -1
- package/dist/commands/list.js.map +1 -1
- package/dist/commands/mcp-registry.d.ts +24 -9
- package/dist/commands/mcp-registry.d.ts.map +1 -1
- package/dist/commands/mcp-registry.js +39 -57
- package/dist/commands/mcp-registry.js.map +1 -1
- package/dist/commands/mcp-writers.d.ts.map +1 -1
- package/dist/commands/mcp-writers.js +6 -5
- package/dist/commands/mcp-writers.js.map +1 -1
- package/dist/commands/mcp.d.ts +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +37 -9
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/update.d.ts.map +1 -1
- package/dist/commands/update.js +16 -6
- package/dist/commands/update.js.map +1 -1
- package/dist/constants/cursor-globs.d.ts.map +1 -1
- package/dist/constants/cursor-globs.js +0 -6
- package/dist/constants/cursor-globs.js.map +1 -1
- package/dist/constants/ide-install-specs.js +9 -9
- package/dist/constants/ide-install-specs.js.map +1 -1
- package/dist/constants.d.ts +3 -3
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +3 -3
- package/dist/constants.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -9
- package/dist/index.js.map +1 -1
- package/dist/types/ide-install.js +1 -1
- package/dist/utils/copy-helpers.d.ts +7 -2
- package/dist/utils/copy-helpers.d.ts.map +1 -1
- package/dist/utils/copy-helpers.js +77 -51
- package/dist/utils/copy-helpers.js.map +1 -1
- package/dist/utils/install-manifest.d.ts +12 -0
- package/dist/utils/install-manifest.d.ts.map +1 -0
- package/dist/utils/install-manifest.js +27 -0
- package/dist/utils/install-manifest.js.map +1 -0
- package/dist/utils/validation.d.ts.map +1 -1
- package/dist/utils/validation.js +34 -7
- package/dist/utils/validation.js.map +1 -1
- package/package.json +5 -4
- package/.agent/core/embeddings.json +0 -2004
- package/.agent/core/session_cache.json +0 -50
- package/.agent/skills/cross-cutting/aws/META.yaml +0 -75
- package/.agent/skills/cross-cutting/ci-cd/META.yaml +0 -60
- package/.agent/skills/cross-cutting/docker/META.yaml +0 -65
- package/.agent/skills/cross-cutting/kubernetes/META.yaml +0 -70
- package/.agent/skills/cross-cutting/ui-ux-pro-max/SKILL.md +0 -565
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/charts.yaml +0 -331
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/colors.yaml +0 -1226
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-decision.yaml +0 -287
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/component-mapping.yaml +0 -318
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/design-tokens.yaml +0 -525
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-animation.yaml +0 -232
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/desktop-architecture.yaml +0 -140
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/directory-structure.yaml +0 -75
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/icons.yaml +0 -918
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/implementation-strategy.yaml +0 -107
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/landing.yaml +0 -372
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-frameworks.yaml +0 -195
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/platform-guidelines.yaml +0 -177
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/products.yaml +0 -1339
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/prompts.yaml +0 -180
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/react-performance.yaml +0 -504
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/desktop.yaml +0 -228
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/flutter.yaml +0 -508
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/html-tailwind.yaml +0 -543
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nextjs.yaml +0 -515
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxt-ui.yaml +0 -519
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/nuxtjs.yaml +0 -599
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react-native.yaml +0 -496
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/react.yaml +0 -526
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/shadcn.yaml +0 -616
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/svelte.yaml +0 -520
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/swiftui.yaml +0 -486
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/stacks/vue.yaml +0 -485
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/styles.yaml +0 -1473
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/typography.yaml +0 -647
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ui-reasoning.yaml +0 -1019
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/ux-guidelines.yaml +0 -1009
- package/.agent/skills/cross-cutting/ui-ux-pro-max/data/web-interface.yaml +0 -347
- 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 +0 -393
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/core_legacy.py +0 -303
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/design_system.py +0 -496
- package/.agent/skills/cross-cutting/ui-ux-pro-max/scripts/search.py +0 -76
- package/.agent/skills/devops/aws/ADVANCED.md +0 -547
- package/.agent/skills/devops/ci-cd/ADVANCED.md +0 -529
- package/.agent/skills/devops/docker/ADVANCED.md +0 -495
- package/.agent/skills/devops/kubernetes/ADVANCED.md +0 -252
- /package/.agent/core/{ARCH_REGISTRY.yaml → reference/ARCH_REGISTRY.yaml} +0 -0
- /package/.agent/core/{BRANDING.yaml → reference/BRANDING.yaml} +0 -0
- /package/.agent/core/{HSA.yaml → reference/HSA.yaml} +0 -0
- /package/.agent/rules/{incremental-changes.md → archive/incremental-changes.md} +0 -0
- /package/.agent/rules/{shell-commands.md → archive/shell-commands.md} +0 -0
- /package/.agent/skills/{cross-cutting → devops}/aws/data/ai_ml.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/aws/data/compute.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/aws/data/kubernetes.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/aws/data/storage.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/ci-cd/data/github_actions.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/ci-cd/data/security.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/docker/data/build.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/docker/data/compose.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/docker/data/security.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/kubernetes/data/networking.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/kubernetes/data/scheduling.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/kubernetes/data/security.yaml +0 -0
- /package/.agent/skills/{cross-cutting → devops}/kubernetes/data/workloads.yaml +0 -0
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: browser-agent-advanced
|
|
3
|
+
version: "1.0.0"
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Browser Agent Advanced Patterns
|
|
7
|
+
|
|
8
|
+
> Reference only — loaded when explicitly needed via ADVANCED.md tier.
|
|
9
|
+
|
|
10
|
+
## Multi-Page Verification Workflow
|
|
11
|
+
|
|
12
|
+
```
|
|
13
|
+
Complete Application Verification:
|
|
14
|
+
|
|
15
|
+
Page Discovery:
|
|
16
|
+
1. Navigate to root URL
|
|
17
|
+
2. browser_snapshot → find all links (role=link)
|
|
18
|
+
3. Map unique internal routes
|
|
19
|
+
4. Create page queue
|
|
20
|
+
|
|
21
|
+
Per-Page Loop:
|
|
22
|
+
For each page in queue:
|
|
23
|
+
1. browser_navigate(page.url)
|
|
24
|
+
2. Run 5-phase verification flow
|
|
25
|
+
3. Collect results
|
|
26
|
+
4. Move to next page
|
|
27
|
+
|
|
28
|
+
Cross-Page Tests:
|
|
29
|
+
1. Navigation consistency (same nav on all pages)
|
|
30
|
+
2. Footer consistency
|
|
31
|
+
3. Auth state persistence
|
|
32
|
+
4. Back/forward navigation
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### Implementation
|
|
36
|
+
|
|
37
|
+
```typescript
|
|
38
|
+
// Multi-page verification orchestration
|
|
39
|
+
async function verifyApplication(rootUrl: string) {
|
|
40
|
+
const pages = await discoverPages(rootUrl);
|
|
41
|
+
const results: PageResult[] = [];
|
|
42
|
+
|
|
43
|
+
for (const page of pages) {
|
|
44
|
+
// Phase 1: Load
|
|
45
|
+
await browser_navigate({ url: page.url });
|
|
46
|
+
await browser_wait_for({ time: 2 });
|
|
47
|
+
|
|
48
|
+
// Phase 2: Discover
|
|
49
|
+
const snapshot = await browser_snapshot();
|
|
50
|
+
const elements = parseElements(snapshot);
|
|
51
|
+
|
|
52
|
+
// Phase 3: Test each element
|
|
53
|
+
for (const element of elements) {
|
|
54
|
+
const result = await testElement(element);
|
|
55
|
+
results.push(result);
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
// Phase 4: Edge cases
|
|
59
|
+
await checkConsoleErrors();
|
|
60
|
+
await checkNetworkErrors();
|
|
61
|
+
await testResponsive();
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// Phase 5: Report
|
|
65
|
+
return generateReport(results);
|
|
66
|
+
}
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Complex Interaction Chains
|
|
70
|
+
|
|
71
|
+
### Chain: Button → Modal → Form → Success
|
|
72
|
+
|
|
73
|
+
```
|
|
74
|
+
Step 1: Click "Add User" button
|
|
75
|
+
└─ browser_click(ref="add-user-btn")
|
|
76
|
+
└─ browser_snapshot() → verify dialog visible
|
|
77
|
+
|
|
78
|
+
Step 2: Fill modal form
|
|
79
|
+
└─ browser_fill_form([
|
|
80
|
+
{ ref: "name", type: "textbox", value: "John Doe" },
|
|
81
|
+
{ ref: "email", type: "textbox", value: "john@test.com" },
|
|
82
|
+
{ ref: "role", type: "combobox", value: "Admin" }
|
|
83
|
+
])
|
|
84
|
+
|
|
85
|
+
Step 3: Submit form
|
|
86
|
+
└─ browser_click(ref="submit-btn")
|
|
87
|
+
└─ browser_wait_for({ text: "Success" })
|
|
88
|
+
|
|
89
|
+
Step 4: Verify success
|
|
90
|
+
└─ browser_snapshot() → modal closed
|
|
91
|
+
└─ browser_snapshot() → new user in list
|
|
92
|
+
└─ browser_take_screenshot() → visual evidence
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### Chain: Search → Filter → Sort → Paginate
|
|
96
|
+
|
|
97
|
+
```
|
|
98
|
+
Step 1: Type search query
|
|
99
|
+
└─ browser_type(ref="search", text="admin")
|
|
100
|
+
└─ browser_wait_for({ text: "results" })
|
|
101
|
+
|
|
102
|
+
Step 2: Apply filter
|
|
103
|
+
└─ browser_click(ref="role-filter")
|
|
104
|
+
└─ browser_select_option(ref="role-filter", values=["admin"])
|
|
105
|
+
|
|
106
|
+
Step 3: Sort by column
|
|
107
|
+
└─ browser_click(ref="name-header")
|
|
108
|
+
└─ browser_snapshot() → verify sort indicator
|
|
109
|
+
|
|
110
|
+
Step 4: Navigate pages
|
|
111
|
+
└─ browser_click(ref="next-page")
|
|
112
|
+
└─ browser_snapshot() → page 2 content
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
## Error Recovery Patterns
|
|
116
|
+
|
|
117
|
+
### Pattern: Element Not Found Recovery
|
|
118
|
+
|
|
119
|
+
```
|
|
120
|
+
Attempt: browser_click(ref="submit-btn")
|
|
121
|
+
Error: Element not found
|
|
122
|
+
|
|
123
|
+
Recovery:
|
|
124
|
+
1. browser_snapshot() — re-read page state
|
|
125
|
+
2. Search for similar element:
|
|
126
|
+
- Look for role=button with name containing "submit"
|
|
127
|
+
- Look for button with aria-label
|
|
128
|
+
3. If found with different ref → retry with new ref
|
|
129
|
+
4. If not found → report as issue with screenshot evidence
|
|
130
|
+
```
|
|
131
|
+
|
|
132
|
+
### Pattern: State Transition Failure
|
|
133
|
+
|
|
134
|
+
```
|
|
135
|
+
Attempt: Click "Save" → expect "Saved" message
|
|
136
|
+
Error: Message not appearing
|
|
137
|
+
|
|
138
|
+
Recovery:
|
|
139
|
+
1. Check browser_console_messages(level="error")
|
|
140
|
+
→ If JS error → report with error details
|
|
141
|
+
2. Check browser_network_requests
|
|
142
|
+
→ If API 500 → report as backend issue
|
|
143
|
+
3. browser_wait_for({ time: 5 })
|
|
144
|
+
→ Retry with longer timeout
|
|
145
|
+
4. If still failing → screenshot + report
|
|
146
|
+
```
|
|
147
|
+
|
|
148
|
+
### Pattern: Modal Won't Close
|
|
149
|
+
|
|
150
|
+
```
|
|
151
|
+
Attempt: browser_press_key("Escape") → modal still visible
|
|
152
|
+
Recovery:
|
|
153
|
+
1. Look for close button: browser_snapshot → find X button
|
|
154
|
+
2. browser_click(ref="close-btn")
|
|
155
|
+
3. If still open → try overlay click
|
|
156
|
+
4. If still open → report as critical bug
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
## Performance Profiling via Browser Agent
|
|
160
|
+
|
|
161
|
+
```
|
|
162
|
+
Performance Checks:
|
|
163
|
+
1. Page load time
|
|
164
|
+
└─ browser_evaluate(() => performance.timing.loadEventEnd - performance.timing.navigationStart)
|
|
165
|
+
|
|
166
|
+
2. Largest Contentful Paint
|
|
167
|
+
└─ browser_evaluate(() => {
|
|
168
|
+
const entries = performance.getEntriesByType('largest-contentful-paint');
|
|
169
|
+
return entries[entries.length - 1]?.startTime;
|
|
170
|
+
})
|
|
171
|
+
|
|
172
|
+
3. DOM element count
|
|
173
|
+
└─ browser_evaluate(() => document.querySelectorAll('*').length)
|
|
174
|
+
|
|
175
|
+
4. Memory usage
|
|
176
|
+
└─ browser_evaluate(() => performance.memory?.usedJSHeapSize)
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
## Multi-Agent Coordination
|
|
180
|
+
|
|
181
|
+
### Orchestrator Delegates to Browser Agent
|
|
182
|
+
|
|
183
|
+
```
|
|
184
|
+
Orchestrator receives: "Build the login page and verify it works"
|
|
185
|
+
|
|
186
|
+
Step 1: Developer persona — writes login page code
|
|
187
|
+
Step 2: Orchestrator delegates to Browser Agent:
|
|
188
|
+
browser_subagent(
|
|
189
|
+
TaskName: "Verify Login Page",
|
|
190
|
+
Task: "Navigate to http://localhost:3000/login.
|
|
191
|
+
1. Verify page loads (no errors)
|
|
192
|
+
2. Test email input (type, clear, validation)
|
|
193
|
+
3. Test password input (type, mask verification)
|
|
194
|
+
4. Test 'Sign in' button (click, disabled when empty)
|
|
195
|
+
5. Test form submission (valid + invalid credentials)
|
|
196
|
+
6. Test 'Forgot password' link navigation
|
|
197
|
+
Return: pass/fail table for all 6 tests",
|
|
198
|
+
RecordingName: "login_verification"
|
|
199
|
+
)
|
|
200
|
+
Step 3: Orchestrator reviews results
|
|
201
|
+
Step 4: If failures → Developer fixes → re-delegate to Browser Agent
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
## Advanced Subagent Task: Responsive Matrix
|
|
205
|
+
|
|
206
|
+
```
|
|
207
|
+
Task for browser_subagent:
|
|
208
|
+
"Navigate to {URL}. Test at these viewport sizes:
|
|
209
|
+
|
|
210
|
+
1. Desktop (1280x720):
|
|
211
|
+
- Take screenshot
|
|
212
|
+
- Verify navigation is horizontal
|
|
213
|
+
- Verify sidebar visible
|
|
214
|
+
|
|
215
|
+
2. Tablet (768x1024):
|
|
216
|
+
- browser_resize(768, 1024)
|
|
217
|
+
- Take screenshot
|
|
218
|
+
- Verify navigation is horizontal
|
|
219
|
+
- Verify sidebar collapsed or hidden
|
|
220
|
+
|
|
221
|
+
3. Mobile (375x812):
|
|
222
|
+
- browser_resize(375, 812)
|
|
223
|
+
- Take screenshot
|
|
224
|
+
- Verify hamburger menu appears
|
|
225
|
+
- Click hamburger → verify menu opens
|
|
226
|
+
- Verify content single-column
|
|
227
|
+
|
|
228
|
+
Return: 3 screenshots + pass/fail for each breakpoint"
|
|
229
|
+
```
|
|
230
|
+
|
|
231
|
+
## Checklist
|
|
232
|
+
|
|
233
|
+
- [ ] Multi-page discovery implemented?
|
|
234
|
+
- [ ] Complex interaction chains tested?
|
|
235
|
+
- [ ] Error recovery handled?
|
|
236
|
+
- [ ] Performance metrics collected?
|
|
237
|
+
- [ ] Responsive matrix verified?
|
|
238
|
+
- [ ] Multi-agent coordination documented?
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
242
|
+
_DOMYH Awesome Code — Browser Agent Advanced Patterns (Reference Only)_
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
name: browser-agent
|
|
2
|
+
version: "1.0.0"
|
|
3
|
+
display: Browser Agent
|
|
4
|
+
category: tooling
|
|
5
|
+
tier: 1
|
|
6
|
+
priority: 1
|
|
7
|
+
|
|
8
|
+
desc: "AI browser agent verification patterns: 5-phase comprehensive testing flow, interactive element discovery, systematic interaction testing, evidence-based reporting. Forces agents to test ALL interactive elements (dropdowns, modals, buttons, hover) not just surface-level checks."
|
|
9
|
+
|
|
10
|
+
### Data Files (5 domains, ~40 patterns)
|
|
11
|
+
- verification-flow.yaml: 5-phase comprehensive testing flow (5)
|
|
12
|
+
- subagent-patterns.yaml: Task templates for browser_subagent tool (5)
|
|
13
|
+
- element-discovery.yaml: Element categorization from accessibility tree (15)
|
|
14
|
+
- recording-patterns.yaml: WebP video recording best practices (6)
|
|
15
|
+
- reporting-patterns.yaml: Evidence-based reporting templates (4)
|
|
16
|
+
|
|
17
|
+
triggers:
|
|
18
|
+
file_patterns: []
|
|
19
|
+
keywords:
|
|
20
|
+
# Core
|
|
21
|
+
- browser agent
|
|
22
|
+
- browser subagent
|
|
23
|
+
- browser_subagent
|
|
24
|
+
- verify frontend
|
|
25
|
+
- test UI
|
|
26
|
+
- check website
|
|
27
|
+
- verify implementation
|
|
28
|
+
- frontend verification
|
|
29
|
+
- browser verification
|
|
30
|
+
# Vietnamese
|
|
31
|
+
- kiểm tra frontend
|
|
32
|
+
- kiểm tra giao diện
|
|
33
|
+
- xác minh frontend
|
|
34
|
+
# Interaction-specific
|
|
35
|
+
- test dropdown
|
|
36
|
+
- test modal
|
|
37
|
+
- verify button
|
|
38
|
+
- test hover
|
|
39
|
+
- comprehensive frontend test
|
|
40
|
+
- test all interactions
|
|
41
|
+
intents:
|
|
42
|
+
- verify frontend works
|
|
43
|
+
- test the website
|
|
44
|
+
- check if UI is working
|
|
45
|
+
- comprehensive frontend test
|
|
46
|
+
- test all interactive elements
|
|
47
|
+
- verify dropdown modal button
|
|
48
|
+
|
|
49
|
+
caps:
|
|
50
|
+
- 5-phase comprehensive verification flow (load → discover → test → a11y → report)
|
|
51
|
+
- Interactive element discovery from accessibility snapshot tree
|
|
52
|
+
- Systematic interaction testing for EACH discovered element
|
|
53
|
+
- Task description templates for browser_subagent tool
|
|
54
|
+
- WebP recording patterns and naming conventions
|
|
55
|
+
- Evidence-based reporting with screenshots and pass/fail
|
|
56
|
+
- Error detection via console messages and network requests
|
|
57
|
+
- Dropdown/Modal/Button/Hover verification integration
|
|
58
|
+
- Multi-page verification workflows
|
|
59
|
+
- Complex interaction chains (button → modal → form → success)
|
|
60
|
+
|
|
61
|
+
data_files:
|
|
62
|
+
- data/verification-flow.yaml
|
|
63
|
+
- data/subagent-patterns.yaml
|
|
64
|
+
- data/element-discovery.yaml
|
|
65
|
+
- data/recording-patterns.yaml
|
|
66
|
+
- data/reporting-patterns.yaml
|
|
67
|
+
|
|
68
|
+
related_skills:
|
|
69
|
+
- playwright
|
|
70
|
+
- testing
|
|
71
|
+
- accessibility
|
|
72
|
+
|
|
73
|
+
hsa_adapter:
|
|
74
|
+
enabled: true
|
|
75
|
+
data_dir: "skills/tooling/browser-agent/data"
|
|
76
|
+
preload_data: true
|
|
77
|
+
|
|
78
|
+
# _DOMYH Awesome Code • Browser Agent Skill META v1.0.0_
|
|
@@ -0,0 +1,164 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: browser-agent
|
|
3
|
+
detect: []
|
|
4
|
+
version: "1.0.0"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Browser Agent Verification Patterns (2026)
|
|
8
|
+
|
|
9
|
+
> AI IDE browser verification skill — forces comprehensive testing, not surface checks. Check `data/` for lookup tables.
|
|
10
|
+
|
|
11
|
+
## 📦 Data Files
|
|
12
|
+
|
|
13
|
+
| File | Content | Records |
|
|
14
|
+
| ------------------------- | ---------------------------------- | ------- |
|
|
15
|
+
| `verification-flow.yaml` | 5-phase comprehensive testing flow | 5 |
|
|
16
|
+
| `subagent-patterns.yaml` | browser_subagent task templates | 5 |
|
|
17
|
+
| `element-discovery.yaml` | Element categorization patterns | 15 |
|
|
18
|
+
| `recording-patterns.yaml` | WebP recording best practices | 6 |
|
|
19
|
+
| `reporting-patterns.yaml` | Evidence-based reporting templates | 4 |
|
|
20
|
+
|
|
21
|
+
## 🎯 Core Problem
|
|
22
|
+
|
|
23
|
+
```
|
|
24
|
+
❌ AI agent says: "Page loads correctly, layout looks good ✅"
|
|
25
|
+
→ MISSED: dropdown doesn't open, modal has no focus trap,
|
|
26
|
+
button submits twice, hover tooltip obscured
|
|
27
|
+
|
|
28
|
+
✅ AI agent MUST: Test EVERY interactive element systematically
|
|
29
|
+
→ Dropdown opens? Select works? Keyboard nav? Escape closes?
|
|
30
|
+
→ Modal triggers? Focus trapped? Escape closes? Form submits?
|
|
31
|
+
→ Button performs action? Disabled works? Rage-click safe?
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## 🔄 5-Phase Comprehensive Verification Flow
|
|
35
|
+
|
|
36
|
+
```
|
|
37
|
+
Phase 1: Page Load ────────────────── HTTP 200? Errors? Layout OK?
|
|
38
|
+
↓
|
|
39
|
+
Phase 2: Element Discovery ────────── browser_snapshot → list ALL elements
|
|
40
|
+
↓
|
|
41
|
+
Phase 3: Systematic Testing ───────── Test EACH element by type
|
|
42
|
+
↓
|
|
43
|
+
Phase 4: Accessibility & Edge Cases ─ Keyboard nav, console, network
|
|
44
|
+
↓
|
|
45
|
+
Phase 5: Evidence Report ──────────── Screenshots + pass/fail table
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### Phase 1: Page Load Verification
|
|
49
|
+
|
|
50
|
+
| Step | MCP Tool | Check |
|
|
51
|
+
| -------- | -------------------------- | --------------- |
|
|
52
|
+
| Navigate | `browser_navigate` | HTTP 200 |
|
|
53
|
+
| Wait | `browser_wait_for` | networkidle |
|
|
54
|
+
| Errors | `browser_console_messages` | No JS errors |
|
|
55
|
+
| Layout | `browser_take_screenshot` | Visual baseline |
|
|
56
|
+
|
|
57
|
+
### Phase 2: Interactive Element Discovery
|
|
58
|
+
|
|
59
|
+
| Step | MCP Tool | Output |
|
|
60
|
+
| ---------- | ------------------ | --------------------------------------------- |
|
|
61
|
+
| Snapshot | `browser_snapshot` | Full accessibility tree |
|
|
62
|
+
| Parse | — | List: buttons, links, inputs, selects, custom |
|
|
63
|
+
| Categorize | — | Group by type for Phase 3 |
|
|
64
|
+
|
|
65
|
+
### Phase 3: Systematic Interaction Testing
|
|
66
|
+
|
|
67
|
+
| Element Type | Tests | MCP Tools |
|
|
68
|
+
| ------------ | ------------------------------------ | ------------------------------------------------------------- |
|
|
69
|
+
| Button | Click → action, disabled, rage-click | `browser_click`, `browser_snapshot` |
|
|
70
|
+
| Dropdown | Open, select, keyboard, close | `browser_click`, `browser_select_option`, `browser_press_key` |
|
|
71
|
+
| Modal | Trigger, focus trap, Escape, form | `browser_click`, `browser_press_key`, `browser_fill_form` |
|
|
72
|
+
| Hover | Trigger, content, keyboard equiv | `browser_hover`, `browser_press_key` |
|
|
73
|
+
| Form | Fill, submit, validate, error | `browser_fill_form`, `browser_click`, `browser_snapshot` |
|
|
74
|
+
|
|
75
|
+
### Phase 4: Accessibility & Edge Cases
|
|
76
|
+
|
|
77
|
+
| Step | MCP Tool | Check |
|
|
78
|
+
| ------------- | --------------------------------- | ---------------------- |
|
|
79
|
+
| Keyboard nav | `browser_press_key(Tab)` | All elements reachable |
|
|
80
|
+
| Focus visible | `browser_take_screenshot` | Focus indicator shown |
|
|
81
|
+
| Console | `browser_console_messages(error)` | No errors |
|
|
82
|
+
| Network | `browser_network_requests` | No 4xx/5xx |
|
|
83
|
+
| Resize | `browser_resize` | Responsive at 375px |
|
|
84
|
+
|
|
85
|
+
### Phase 5: Evidence-Based Report
|
|
86
|
+
|
|
87
|
+
| Item | Content |
|
|
88
|
+
| ---------- | ------------------------------ |
|
|
89
|
+
| Screenshot | Per-element evidence |
|
|
90
|
+
| Pass/Fail | Per-checkpoint table |
|
|
91
|
+
| Issues | Element + expected + actual |
|
|
92
|
+
| Recording | WebP video of interaction flow |
|
|
93
|
+
|
|
94
|
+
## 🤖 browser_subagent Task Template
|
|
95
|
+
|
|
96
|
+
```
|
|
97
|
+
Task: "Navigate to {URL}. Wait for page load.
|
|
98
|
+
|
|
99
|
+
1. Take a browser_snapshot and list ALL interactive elements
|
|
100
|
+
2. For EACH button: click it, verify the action, take screenshot
|
|
101
|
+
3. For EACH dropdown: open it, select an option, verify update
|
|
102
|
+
4. For EACH modal trigger: open modal, test Escape close, test focus trap
|
|
103
|
+
5. Check browser_console_messages for errors
|
|
104
|
+
6. Check browser_network_requests for failed requests
|
|
105
|
+
|
|
106
|
+
Return: List of all elements tested with pass/fail status."
|
|
107
|
+
|
|
108
|
+
RecordingName: "comprehensive_verification"
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## 🔍 Decision Tree: Playwright MCP vs browser_subagent
|
|
112
|
+
|
|
113
|
+
```
|
|
114
|
+
Need browser interaction?
|
|
115
|
+
├─ Quick check (1-2 actions) → Use Playwright MCP tools directly
|
|
116
|
+
│ browser_navigate → browser_snapshot → browser_click
|
|
117
|
+
│
|
|
118
|
+
├─ Comprehensive verification → Use browser_subagent
|
|
119
|
+
│ Delegate entire 5-phase flow as one task
|
|
120
|
+
│
|
|
121
|
+
└─ Visual comparison → Use browser_subagent with screenshots
|
|
122
|
+
Take screenshots before/after changes
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
## ⚠️ Anti-Patterns
|
|
126
|
+
|
|
127
|
+
| ❌ Don't | ✅ Do |
|
|
128
|
+
| --------------------------- | ----------------------------------------- |
|
|
129
|
+
| "Page loads, looks good ✅" | Run 5-phase flow, test EVERY element |
|
|
130
|
+
| Test only buttons | Test buttons + dropdowns + modals + hover |
|
|
131
|
+
| Skip keyboard testing | Test Tab/Enter/Escape on ALL elements |
|
|
132
|
+
| Just take screenshot | Take snapshot first (accessibility tree) |
|
|
133
|
+
| Assume modal works | Test focus trap, Escape close, overlay |
|
|
134
|
+
| Test once | Test at mobile (375px) + desktop (1280px) |
|
|
135
|
+
|
|
136
|
+
## 📋 Quick Checklist
|
|
137
|
+
|
|
138
|
+
Before reporting "frontend works":
|
|
139
|
+
|
|
140
|
+
- [ ] Phase 1: Page loads without console errors?
|
|
141
|
+
- [ ] Phase 2: ALL interactive elements discovered?
|
|
142
|
+
- [ ] Phase 3: EACH element tested (click, select, type)?
|
|
143
|
+
- [ ] Phase 4: Keyboard navigation works?
|
|
144
|
+
- [ ] Phase 4: No 4xx/5xx network errors?
|
|
145
|
+
- [ ] Phase 5: Evidence (screenshots) collected?
|
|
146
|
+
- [ ] Responsive: Works at 375px mobile width?
|
|
147
|
+
|
|
148
|
+
## 🔌 HSA Integration
|
|
149
|
+
|
|
150
|
+
Data powered by HSA BM25 search engine:
|
|
151
|
+
|
|
152
|
+
| Domain | Query Examples |
|
|
153
|
+
| --------- | -------------------------------------- |
|
|
154
|
+
| Flow | "5-phase verification flow" |
|
|
155
|
+
| Subagent | "browser_subagent task template" |
|
|
156
|
+
| Discovery | "element discovery accessibility tree" |
|
|
157
|
+
| Recording | "WebP recording naming convention" |
|
|
158
|
+
| Reporting | "evidence-based report template" |
|
|
159
|
+
|
|
160
|
+
**Data domains**: `verification-flow`, `subagent-patterns`, `element-discovery`, `recording-patterns`, `reporting-patterns`
|
|
161
|
+
|
|
162
|
+
---
|
|
163
|
+
|
|
164
|
+
_DOMYH Awesome Code — Browser Agent Verification Patterns (Data-Driven + HSA)_
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
# =============================================================================
|
|
2
|
+
# element-discovery.yaml — Element Categorization from Accessibility Tree
|
|
3
|
+
# =============================================================================
|
|
4
|
+
|
|
5
|
+
version: "1.0.0"
|
|
6
|
+
|
|
7
|
+
# How to discover and categorize interactive elements from browser_snapshot
|
|
8
|
+
|
|
9
|
+
discovery_source: "browser_snapshot (accessibility tree)"
|
|
10
|
+
|
|
11
|
+
element_types:
|
|
12
|
+
# =========================================================================
|
|
13
|
+
# SIMPLE INTERACTIVE ELEMENTS
|
|
14
|
+
# =========================================================================
|
|
15
|
+
interactive:
|
|
16
|
+
- type: button
|
|
17
|
+
detection:
|
|
18
|
+
roles: ["button"]
|
|
19
|
+
attributes: ["type=button", "type=submit", "type=reset"]
|
|
20
|
+
patterns: ["<button>", 'role="button"']
|
|
21
|
+
test_actions:
|
|
22
|
+
- "Click → verify action"
|
|
23
|
+
- "Check disabled state"
|
|
24
|
+
- "Verify loading state"
|
|
25
|
+
- "Tab focus + Enter activation"
|
|
26
|
+
mcp_tools: ["browser_click", "browser_press_key", "browser_snapshot"]
|
|
27
|
+
checklist_ref: "BT-F01 through BT-A04"
|
|
28
|
+
|
|
29
|
+
- type: link
|
|
30
|
+
detection:
|
|
31
|
+
roles: ["link"]
|
|
32
|
+
attributes: ["href"]
|
|
33
|
+
patterns: ["<a href>"]
|
|
34
|
+
test_actions:
|
|
35
|
+
- "Click → verify navigation"
|
|
36
|
+
- "Check target URL"
|
|
37
|
+
- "Verify opens in correct target (_blank, _self)"
|
|
38
|
+
mcp_tools: ["browser_click", "browser_snapshot"]
|
|
39
|
+
|
|
40
|
+
- type: text_input
|
|
41
|
+
detection:
|
|
42
|
+
roles: ["textbox", "searchbox"]
|
|
43
|
+
attributes: ["type=text", "type=email", "type=password", "type=search"]
|
|
44
|
+
patterns: ['<input type="text">', "<textarea>"]
|
|
45
|
+
test_actions:
|
|
46
|
+
- "Click to focus"
|
|
47
|
+
- "Type text → verify value"
|
|
48
|
+
- "Clear → verify empty"
|
|
49
|
+
- "Validation on blur"
|
|
50
|
+
mcp_tools: ["browser_click", "browser_type", "browser_snapshot"]
|
|
51
|
+
|
|
52
|
+
- type: checkbox
|
|
53
|
+
detection:
|
|
54
|
+
roles: ["checkbox"]
|
|
55
|
+
attributes: ["type=checkbox"]
|
|
56
|
+
patterns: ['<input type="checkbox">']
|
|
57
|
+
test_actions:
|
|
58
|
+
- "Click → toggle state"
|
|
59
|
+
- "Verify checked/unchecked"
|
|
60
|
+
- "Space key toggles"
|
|
61
|
+
mcp_tools: ["browser_click", "browser_press_key", "browser_snapshot"]
|
|
62
|
+
|
|
63
|
+
- type: radio
|
|
64
|
+
detection:
|
|
65
|
+
roles: ["radio"]
|
|
66
|
+
attributes: ["type=radio"]
|
|
67
|
+
patterns: ['<input type="radio">']
|
|
68
|
+
test_actions:
|
|
69
|
+
- "Click → select only one"
|
|
70
|
+
- "Arrow keys navigate group"
|
|
71
|
+
- "Verify mutual exclusivity"
|
|
72
|
+
mcp_tools: ["browser_click", "browser_press_key", "browser_snapshot"]
|
|
73
|
+
|
|
74
|
+
- type: switch
|
|
75
|
+
detection:
|
|
76
|
+
roles: ["switch"]
|
|
77
|
+
attributes: ["role=switch"]
|
|
78
|
+
test_actions:
|
|
79
|
+
- "Click → toggle on/off"
|
|
80
|
+
- "Space key toggles"
|
|
81
|
+
- "Verify visual state matches"
|
|
82
|
+
mcp_tools: ["browser_click", "browser_snapshot"]
|
|
83
|
+
|
|
84
|
+
# =========================================================================
|
|
85
|
+
# COMPOUND INTERACTIVE ELEMENTS (require multiple interactions)
|
|
86
|
+
# =========================================================================
|
|
87
|
+
compound:
|
|
88
|
+
- type: dropdown_native
|
|
89
|
+
detection:
|
|
90
|
+
roles: ["combobox", "listbox"]
|
|
91
|
+
patterns: ["<select>"]
|
|
92
|
+
test_actions:
|
|
93
|
+
- "Click → open options"
|
|
94
|
+
- "Select option → verify value"
|
|
95
|
+
- "Arrow keys navigate"
|
|
96
|
+
- "Escape closes"
|
|
97
|
+
mcp_tools: ["browser_click", "browser_select_option", "browser_press_key"]
|
|
98
|
+
checklist_ref: "DD-F01 through DD-VA03"
|
|
99
|
+
|
|
100
|
+
- type: dropdown_custom
|
|
101
|
+
detection:
|
|
102
|
+
roles: ["combobox"]
|
|
103
|
+
attributes: ["aria-haspopup=listbox", "aria-expanded"]
|
|
104
|
+
test_actions:
|
|
105
|
+
- "Click trigger → open list"
|
|
106
|
+
- "Click option → verify selection"
|
|
107
|
+
- "Keyboard: Enter open, arrows navigate, Escape close"
|
|
108
|
+
- "Search/filter (if available)"
|
|
109
|
+
mcp_tools:
|
|
110
|
+
[
|
|
111
|
+
"browser_click",
|
|
112
|
+
"browser_press_key",
|
|
113
|
+
"browser_type",
|
|
114
|
+
"browser_snapshot",
|
|
115
|
+
]
|
|
116
|
+
checklist_ref: "DD-F01 through DD-VA03"
|
|
117
|
+
|
|
118
|
+
- type: modal
|
|
119
|
+
detection:
|
|
120
|
+
roles: ["dialog"]
|
|
121
|
+
attributes: ["aria-modal=true", "aria-haspopup=dialog"]
|
|
122
|
+
test_actions:
|
|
123
|
+
- "Click trigger → open modal"
|
|
124
|
+
- "Verify overlay and centered"
|
|
125
|
+
- "Focus trap: Tab stays inside"
|
|
126
|
+
- "Escape closes, focus returns"
|
|
127
|
+
- "Form inside: fill and submit"
|
|
128
|
+
mcp_tools:
|
|
129
|
+
[
|
|
130
|
+
"browser_click",
|
|
131
|
+
"browser_press_key",
|
|
132
|
+
"browser_fill_form",
|
|
133
|
+
"browser_snapshot",
|
|
134
|
+
]
|
|
135
|
+
checklist_ref: "MD-TD01 through MD-FM04"
|
|
136
|
+
|
|
137
|
+
- type: accordion
|
|
138
|
+
detection:
|
|
139
|
+
attributes: ["aria-expanded"]
|
|
140
|
+
patterns: ["accordion", "collapsible"]
|
|
141
|
+
test_actions:
|
|
142
|
+
- "Click header → expand/collapse"
|
|
143
|
+
- "Verify content visibility"
|
|
144
|
+
- "Multiple open vs single open"
|
|
145
|
+
mcp_tools: ["browser_click", "browser_snapshot"]
|
|
146
|
+
|
|
147
|
+
- type: tabs
|
|
148
|
+
detection:
|
|
149
|
+
roles: ["tab", "tablist", "tabpanel"]
|
|
150
|
+
test_actions:
|
|
151
|
+
- "Click tab → show panel"
|
|
152
|
+
- "Arrow keys switch tabs"
|
|
153
|
+
- "Verify panel content"
|
|
154
|
+
mcp_tools: ["browser_click", "browser_press_key", "browser_snapshot"]
|
|
155
|
+
|
|
156
|
+
- type: menu
|
|
157
|
+
detection:
|
|
158
|
+
roles: ["menu", "menubar", "menuitem"]
|
|
159
|
+
attributes: ["aria-haspopup=menu"]
|
|
160
|
+
test_actions:
|
|
161
|
+
- "Click/hover → open menu"
|
|
162
|
+
- "Click item → action"
|
|
163
|
+
- "Arrow keys navigate"
|
|
164
|
+
- "Escape closes"
|
|
165
|
+
mcp_tools:
|
|
166
|
+
[
|
|
167
|
+
"browser_click",
|
|
168
|
+
"browser_hover",
|
|
169
|
+
"browser_press_key",
|
|
170
|
+
"browser_snapshot",
|
|
171
|
+
]
|
|
172
|
+
|
|
173
|
+
# =========================================================================
|
|
174
|
+
# VISUAL INTERACTIVE ELEMENTS
|
|
175
|
+
# =========================================================================
|
|
176
|
+
visual:
|
|
177
|
+
- type: tooltip
|
|
178
|
+
detection:
|
|
179
|
+
attributes: ["aria-describedby", "data-tooltip"]
|
|
180
|
+
patterns: ["title="]
|
|
181
|
+
test_actions:
|
|
182
|
+
- "Hover → tooltip appears"
|
|
183
|
+
- "Focus → tooltip appears (keyboard)"
|
|
184
|
+
- "Content readable"
|
|
185
|
+
- "No layout shift"
|
|
186
|
+
mcp_tools: ["browser_hover", "browser_press_key", "browser_snapshot"]
|
|
187
|
+
checklist_ref: "HV-T01 through HV-TE02"
|
|
188
|
+
|
|
189
|
+
- type: carousel
|
|
190
|
+
detection:
|
|
191
|
+
attributes: ["role=region"]
|
|
192
|
+
patterns: ["carousel", "slider", "swiper"]
|
|
193
|
+
test_actions:
|
|
194
|
+
- "Next/prev buttons work"
|
|
195
|
+
- "Dots/indicators sync"
|
|
196
|
+
- "Auto-play pauses on hover"
|
|
197
|
+
mcp_tools: ["browser_click", "browser_hover", "browser_snapshot"]
|
|
198
|
+
|
|
199
|
+
# Discovery Workflow
|
|
200
|
+
workflow:
|
|
201
|
+
- step: "Call browser_snapshot"
|
|
202
|
+
- step: "Parse accessibility tree output"
|
|
203
|
+
- step: "For each element with an interactive role, add to test list"
|
|
204
|
+
- step: "For compound elements (aria-haspopup, aria-expanded), add enhanced tests"
|
|
205
|
+
- step: "Sort by priority: forms > modals > dropdowns > buttons > tooltips"
|
|
206
|
+
- step: "Generate Phase 3 test plan"
|
|
207
|
+
|
|
208
|
+
# _DOMYH Awesome Code • Element Discovery Patterns v1.0.0_
|