blockmine 1.21.0 → 1.22.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/.claude/agents/README.md +469 -0
- package/.claude/agents/auth-route-debugger.md +118 -0
- package/.claude/agents/auth-route-tester.md +93 -0
- package/.claude/agents/auto-error-resolver.md +97 -0
- package/.claude/agents/build-optimizer.md +236 -0
- package/.claude/agents/code-architecture-reviewer.md +83 -0
- package/.claude/agents/code-refactor-master.md +94 -0
- package/.claude/agents/cost-optimizer.md +134 -0
- package/.claude/agents/deployment-orchestrator.md +113 -0
- package/.claude/agents/documentation-architect.md +82 -0
- package/.claude/agents/frontend-error-fixer.md +77 -0
- package/.claude/agents/iac-code-generator.md +71 -0
- package/.claude/agents/incident-responder.md +346 -0
- package/.claude/agents/infrastructure-architect.md +31 -0
- package/.claude/agents/kubernetes-specialist.md +56 -0
- package/.claude/agents/migration-planner.md +181 -0
- package/.claude/agents/network-architect.md +196 -0
- package/.claude/agents/plan-reviewer.md +52 -0
- package/.claude/agents/refactor-planner.md +63 -0
- package/.claude/agents/security-scanner.md +102 -0
- package/.claude/agents/web-research-specialist.md +78 -0
- package/.claude/commands/cost-analysis.md +315 -0
- package/.claude/commands/dev-docs-update.md +55 -0
- package/.claude/commands/dev-docs.md +51 -0
- package/.claude/commands/incident-debug.md +247 -0
- package/.claude/commands/infra-plan.md +81 -0
- package/.claude/commands/migration-plan.md +478 -0
- package/.claude/commands/route-research-for-testing.md +37 -0
- package/.claude/commands/security-review.md +66 -0
- package/.claude/hooks/CONFIG.md +448 -0
- package/.claude/hooks/README.md +163 -0
- package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +226 -0
- package/.claude/hooks/WINDOWS_HOOKS_README.md +151 -0
- package/.claude/hooks/add-skill-activation-banners.ts +132 -0
- package/.claude/hooks/comprehensive-skill-test.ts +1315 -0
- package/.claude/hooks/error-handling-reminder.sh +12 -0
- package/.claude/hooks/error-handling-reminder.ts +222 -0
- package/.claude/hooks/k8s-manifest-validator.sh +56 -0
- package/.claude/hooks/package-lock.json +556 -0
- package/.claude/hooks/package.json +16 -0
- package/.claude/hooks/post-tool-use-tracker.ps1 +174 -0
- package/.claude/hooks/post-tool-use-tracker.sh +183 -0
- package/.claude/hooks/security-policy-check.sh +247 -0
- package/.claude/hooks/skill-activation-prompt.ps1 +10 -0
- package/.claude/hooks/skill-activation-prompt.sh +10 -0
- package/.claude/hooks/skill-activation-prompt.ts +141 -0
- package/.claude/hooks/stop-build-check-enhanced.sh +130 -0
- package/.claude/hooks/terraform-validator.sh +53 -0
- package/.claude/hooks/test-input.json +7 -0
- package/.claude/hooks/test-skill-activation.ts +427 -0
- package/.claude/hooks/trigger-build-resolver.sh +79 -0
- package/.claude/hooks/tsc-check.sh +173 -0
- package/.claude/hooks/tsconfig.json +19 -0
- package/.claude/settings.json +55 -0
- package/.claude/settings.local.json +27 -14
- package/.claude/skills/README.md +507 -0
- package/.claude/skills/api-engineering/SKILL.md +63 -0
- package/.claude/skills/api-engineering/resources/api-versioning.md +88 -0
- package/.claude/skills/api-engineering/resources/graphql-patterns.md +106 -0
- package/.claude/skills/api-engineering/resources/rate-limiting.md +118 -0
- package/.claude/skills/api-engineering/resources/rest-api-design.md +105 -0
- package/.claude/skills/backend-dev-guidelines/SKILL.md +306 -0
- package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
- package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
- package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
- package/.claude/skills/backend-dev-guidelines/resources/configuration.md +275 -0
- package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
- package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
- package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
- package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
- package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
- package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
- package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
- package/.claude/skills/budget-and-cost-management/SKILL.md +850 -0
- package/.claude/skills/build-engineering/SKILL.md +431 -0
- package/.claude/skills/build-engineering/resources/artifact-repositories.md +72 -0
- package/.claude/skills/build-engineering/resources/build-caching.md +96 -0
- package/.claude/skills/build-engineering/resources/build-pipelines.md +105 -0
- package/.claude/skills/build-engineering/resources/build-security.md +95 -0
- package/.claude/skills/build-engineering/resources/build-systems.md +389 -0
- package/.claude/skills/build-engineering/resources/compilation-optimization.md +201 -0
- package/.claude/skills/build-engineering/resources/dependency-management.md +73 -0
- package/.claude/skills/build-engineering/resources/monorepo-builds.md +110 -0
- package/.claude/skills/build-engineering/resources/performance-optimization.md +113 -0
- package/.claude/skills/build-engineering/resources/reproducible-builds.md +82 -0
- package/.claude/skills/cloud-engineering/SKILL.md +675 -0
- package/.claude/skills/cloud-engineering/resources/aws-patterns.md +742 -0
- package/.claude/skills/cloud-engineering/resources/azure-patterns.md +714 -0
- package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +987 -0
- package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +757 -0
- package/.claude/skills/cloud-engineering/resources/cloud-networking.md +1058 -0
- package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +1530 -0
- package/.claude/skills/cloud-engineering/resources/cloud-security.md +990 -0
- package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +758 -0
- package/.claude/skills/cloud-engineering/resources/migration-strategies.md +820 -0
- package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +670 -0
- package/.claude/skills/cloud-engineering/resources/oci-patterns.md +1198 -0
- package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +795 -0
- package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +966 -0
- package/.claude/skills/cybersecurity/SKILL.md +409 -0
- package/.claude/skills/cybersecurity/resources/security-architecture.md +266 -0
- package/.claude/skills/database-engineering/SKILL.md +61 -0
- package/.claude/skills/database-engineering/resources/backup-and-recovery.md +72 -0
- package/.claude/skills/database-engineering/resources/database-replication.md +63 -0
- package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +70 -0
- package/.claude/skills/database-engineering/resources/query-optimization.md +68 -0
- package/.claude/skills/devsecops/SKILL.md +374 -0
- package/.claude/skills/devsecops/resources/ci-cd-security.md +204 -0
- package/.claude/skills/devsecops/resources/compliance-automation.md +530 -0
- package/.claude/skills/devsecops/resources/compliance-frameworks.md +2322 -0
- package/.claude/skills/devsecops/resources/container-security.md +915 -0
- package/.claude/skills/devsecops/resources/cspm-integration.md +1440 -0
- package/.claude/skills/devsecops/resources/policy-enforcement.md +619 -0
- package/.claude/skills/devsecops/resources/secrets-management.md +755 -0
- package/.claude/skills/devsecops/resources/security-monitoring.md +146 -0
- package/.claude/skills/devsecops/resources/security-scanning.md +887 -0
- package/.claude/skills/devsecops/resources/security-testing.md +203 -0
- package/.claude/skills/devsecops/resources/supply-chain-security.md +518 -0
- package/.claude/skills/devsecops/resources/vulnerability-management.md +481 -0
- package/.claude/skills/devsecops/resources/zero-trust-architecture.md +177 -0
- package/.claude/skills/documentation-as-code/SKILL.md +323 -0
- package/.claude/skills/documentation-as-code/resources/api-documentation.md +90 -0
- package/.claude/skills/documentation-as-code/resources/changelog-management.md +79 -0
- package/.claude/skills/documentation-as-code/resources/diagram-generation.md +44 -0
- package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +99 -0
- package/.claude/skills/documentation-as-code/resources/documentation-automation.md +68 -0
- package/.claude/skills/documentation-as-code/resources/documentation-sites.md +79 -0
- package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +162 -0
- package/.claude/skills/documentation-as-code/resources/openapi-specification.md +77 -0
- package/.claude/skills/documentation-as-code/resources/readme-engineering.md +60 -0
- package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +202 -0
- package/.claude/skills/engineering-management/SKILL.md +356 -0
- package/.claude/skills/engineering-management/resources/career-ladders.md +609 -0
- package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +555 -0
- package/.claude/skills/engineering-management/resources/one-on-one-guides.md +609 -0
- package/.claude/skills/engineering-management/resources/resource-planning.md +557 -0
- package/.claude/skills/engineering-management/resources/team-organization-patterns.md +491 -0
- package/.claude/skills/engineering-management/resources/technical-interviews.md +474 -0
- package/.claude/skills/engineering-operations-management/SKILL.md +817 -0
- package/.claude/skills/error-tracking/SKILL.md +379 -0
- package/.claude/skills/frontend-dev-guidelines/SKILL.md +403 -0
- package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
- package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
- package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
- package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
- package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
- package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
- package/.claude/skills/frontend-dev-guidelines/resources/performance.md +406 -0
- package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
- package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
- package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
- package/.claude/skills/general-it-engineering/SKILL.md +393 -0
- package/.claude/skills/general-it-engineering/resources/asset-management.md +712 -0
- package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +817 -0
- package/.claude/skills/general-it-engineering/resources/business-continuity.md +786 -0
- package/.claude/skills/general-it-engineering/resources/change-management.md +715 -0
- package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +729 -0
- package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +738 -0
- package/.claude/skills/general-it-engineering/resources/incident-service-management.md +834 -0
- package/.claude/skills/general-it-engineering/resources/it-governance.md +753 -0
- package/.claude/skills/general-it-engineering/resources/itil-framework.md +503 -0
- package/.claude/skills/general-it-engineering/resources/service-management.md +669 -0
- package/.claude/skills/infrastructure-architecture/SKILL.md +328 -0
- package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +505 -0
- package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +528 -0
- package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +453 -0
- package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +773 -0
- package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +499 -0
- package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +501 -0
- package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +535 -0
- package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +512 -0
- package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +608 -0
- package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +562 -0
- package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +538 -0
- package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +489 -0
- package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +1000 -0
- package/.claude/skills/infrastructure-strategy/SKILL.md +924 -0
- package/.claude/skills/network-engineering/SKILL.md +385 -0
- package/.claude/skills/network-engineering/resources/dns-management.md +738 -0
- package/.claude/skills/network-engineering/resources/load-balancing.md +820 -0
- package/.claude/skills/network-engineering/resources/network-architecture.md +546 -0
- package/.claude/skills/network-engineering/resources/network-security.md +921 -0
- package/.claude/skills/network-engineering/resources/network-troubleshooting.md +749 -0
- package/.claude/skills/network-engineering/resources/routing-switching.md +373 -0
- package/.claude/skills/network-engineering/resources/sdn-networking.md +695 -0
- package/.claude/skills/network-engineering/resources/service-mesh-networking.md +777 -0
- package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +444 -0
- package/.claude/skills/network-engineering/resources/vpn-connectivity.md +672 -0
- package/.claude/skills/observability-engineering/SKILL.md +101 -0
- package/.claude/skills/observability-engineering/resources/apm-tools.md +97 -0
- package/.claude/skills/observability-engineering/resources/correlation-strategies.md +87 -0
- package/.claude/skills/observability-engineering/resources/distributed-tracing.md +98 -0
- package/.claude/skills/observability-engineering/resources/logs-aggregation.md +118 -0
- package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +141 -0
- package/.claude/skills/observability-engineering/resources/opentelemetry.md +110 -0
- package/.claude/skills/platform-engineering/SKILL.md +555 -0
- package/.claude/skills/platform-engineering/resources/architecture-overview.md +600 -0
- package/.claude/skills/platform-engineering/resources/container-orchestration.md +916 -0
- package/.claude/skills/platform-engineering/resources/cost-optimization.md +634 -0
- package/.claude/skills/platform-engineering/resources/developer-platforms.md +670 -0
- package/.claude/skills/platform-engineering/resources/gitops-automation.md +650 -0
- package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +778 -0
- package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +708 -0
- package/.claude/skills/platform-engineering/resources/multi-tenancy.md +602 -0
- package/.claude/skills/platform-engineering/resources/platform-security.md +711 -0
- package/.claude/skills/platform-engineering/resources/resource-management.md +592 -0
- package/.claude/skills/platform-engineering/resources/service-mesh.md +628 -0
- package/.claude/skills/release-engineering/SKILL.md +393 -0
- package/.claude/skills/release-engineering/resources/artifact-management.md +108 -0
- package/.claude/skills/release-engineering/resources/build-optimization.md +84 -0
- package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +411 -0
- package/.claude/skills/release-engineering/resources/deployment-strategies.md +197 -0
- package/.claude/skills/release-engineering/resources/pipeline-security.md +62 -0
- package/.claude/skills/release-engineering/resources/progressive-delivery.md +83 -0
- package/.claude/skills/release-engineering/resources/release-automation.md +68 -0
- package/.claude/skills/release-engineering/resources/release-orchestration.md +77 -0
- package/.claude/skills/release-engineering/resources/rollback-strategies.md +66 -0
- package/.claude/skills/release-engineering/resources/versioning-strategies.md +59 -0
- package/.claude/skills/route-tester/SKILL.md +392 -0
- package/.claude/skills/skill-developer/ADVANCED.md +197 -0
- package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
- package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
- package/.claude/skills/skill-developer/SKILL.md +430 -0
- package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
- package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
- package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
- package/.claude/skills/skill-rules.json +2940 -0
- package/.claude/skills/sre/SKILL.md +464 -0
- package/.claude/skills/sre/resources/alerting-best-practices.md +282 -0
- package/.claude/skills/sre/resources/capacity-planning.md +226 -0
- package/.claude/skills/sre/resources/chaos-engineering.md +193 -0
- package/.claude/skills/sre/resources/disaster-recovery.md +232 -0
- package/.claude/skills/sre/resources/incident-management.md +436 -0
- package/.claude/skills/sre/resources/observability-stack.md +240 -0
- package/.claude/skills/sre/resources/on-call-runbooks.md +167 -0
- package/.claude/skills/sre/resources/performance-optimization.md +108 -0
- package/.claude/skills/sre/resources/reliability-patterns.md +183 -0
- package/.claude/skills/sre/resources/slo-sli-sla.md +464 -0
- package/.claude/skills/sre/resources/toil-reduction.md +145 -0
- package/.claude/skills/systems-engineering/SKILL.md +648 -0
- package/.claude/skills/systems-engineering/resources/automation-patterns.md +771 -0
- package/.claude/skills/systems-engineering/resources/configuration-management.md +998 -0
- package/.claude/skills/systems-engineering/resources/linux-administration.md +672 -0
- package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +982 -0
- package/.claude/skills/systems-engineering/resources/performance-tuning.md +871 -0
- package/.claude/skills/systems-engineering/resources/powershell-scripting.md +482 -0
- package/.claude/skills/systems-engineering/resources/security-hardening.md +739 -0
- package/.claude/skills/systems-engineering/resources/shell-scripting.md +915 -0
- package/.claude/skills/systems-engineering/resources/storage-management.md +628 -0
- package/.claude/skills/systems-engineering/resources/system-monitoring.md +787 -0
- package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +753 -0
- package/.claude/skills/systems-engineering/resources/windows-administration.md +738 -0
- package/.claude/skills/technical-leadership/SKILL.md +728 -0
- package/CHANGELOG.md +90 -54
- package/README.md +94 -0
- package/backend/docs/SECRETS_DOCUMENTATION.md +327 -0
- package/backend/jest.config.js +59 -0
- package/backend/package-lock.json +6129 -0
- package/backend/package.json +16 -4
- package/backend/prisma/migrations/20251026104609_add_websocket_api/migration.sql +33 -0
- package/backend/prisma/schema.prisma +33 -0
- package/backend/src/__tests__/core/DependencyService.test.js +336 -0
- package/backend/src/__tests__/core/UserService.test.js +875 -0
- package/backend/src/__tests__/repositories/BaseRepository.test.js +146 -0
- package/backend/src/__tests__/repositories/BotRepository.test.js +118 -0
- package/backend/src/__tests__/repositories/CommandRepository.test.js +132 -0
- package/backend/src/__tests__/repositories/EventGraphRepository.test.js +93 -0
- package/backend/src/__tests__/repositories/GroupRepository.test.js +155 -0
- package/backend/src/__tests__/repositories/PermissionRepository.test.js +130 -0
- package/backend/src/__tests__/repositories/PluginRepository.test.js +107 -0
- package/backend/src/__tests__/repositories/ServerRepository.test.js +80 -0
- package/backend/src/__tests__/repositories/UserRepository.test.js +128 -0
- package/backend/src/__tests__/secretsFilter.test.js +425 -0
- package/backend/src/__tests__/services/BotLifecycleService.test.js +411 -0
- package/backend/src/__tests__/services/BotProcessManager.test.js +285 -0
- package/backend/src/__tests__/services/CacheManager.test.js +125 -0
- package/backend/src/__tests__/services/CommandExecutionService.test.js +460 -0
- package/backend/src/__tests__/services/ResourceMonitorService.test.js +207 -0
- package/backend/src/__tests__/services/TelemetryService.test.js +291 -0
- package/backend/src/__tests__/setup.js +25 -0
- package/backend/src/api/routes/apiKeys.js +181 -0
- package/backend/src/api/routes/bots.js +49 -7
- package/backend/src/api/routes/plugins.js +2 -1
- package/backend/src/api/routes/system.js +174 -0
- package/backend/src/container.js +82 -0
- package/backend/src/core/BotManager.js +142 -871
- package/backend/src/core/BotManager.old.js +1093 -0
- package/backend/src/core/BotProcess.js +1092 -858
- package/backend/src/core/EventGraphManager.js +280 -198
- package/backend/src/core/GraphExecutionEngine.js +321 -325
- package/backend/src/core/MessageQueue.js +27 -6
- package/backend/src/core/NodeRegistry.js +37 -1134
- package/backend/src/core/PluginManager.js +62 -12
- package/backend/src/core/PrismaService.js +32 -0
- package/backend/src/core/UserService.js +3 -3
- package/backend/src/core/__tests__/PrismaService.test.js +24 -0
- package/backend/src/core/commands/README.md +305 -0
- package/backend/src/core/commands/dev.js +13 -7
- package/backend/src/core/commands/ping.js +10 -4
- package/backend/src/core/commands/whois.js +63 -0
- package/backend/src/core/config/validation.js +27 -0
- package/backend/src/core/constants/graphTypes.js +21 -0
- package/backend/src/core/node-registries/actions.js +132 -0
- package/backend/src/core/node-registries/arrays.js +137 -0
- package/backend/src/core/node-registries/bot.js +23 -0
- package/backend/src/core/node-registries/data.js +290 -0
- package/backend/src/core/node-registries/debug.js +26 -0
- package/backend/src/core/node-registries/events.js +187 -0
- package/backend/src/core/node-registries/flow.js +139 -0
- package/backend/src/core/node-registries/logic.js +45 -0
- package/backend/src/core/node-registries/math.js +42 -0
- package/backend/src/core/node-registries/objects.js +98 -0
- package/backend/src/core/node-registries/strings.js +153 -0
- package/backend/src/core/node-registries/time.js +113 -0
- package/backend/src/core/node-registries/users.js +79 -0
- package/backend/src/core/nodes/{action_bot_look_at.js → actions/bot_look_at.js} +36 -36
- package/backend/src/core/nodes/{action_bot_set_variable.js → actions/bot_set_variable.js} +32 -32
- package/backend/src/core/nodes/{action_send_log.js → actions/send_log.js} +28 -23
- package/backend/src/core/nodes/{action_send_message.js → actions/send_message.js} +32 -32
- package/backend/src/core/nodes/actions/send_websocket_response.js +33 -0
- package/backend/src/core/nodes/arrays/get_next.js +35 -0
- package/backend/src/core/nodes/{data_cast.js → data/cast.js} +8 -0
- package/backend/src/core/nodes/data/datetime_literal.js +27 -0
- package/backend/src/core/nodes/data/entity_info.js +69 -0
- package/backend/src/core/nodes/data/get_nearby_entities.js +32 -0
- package/backend/src/core/nodes/data/get_nearby_players.js +64 -0
- package/backend/src/core/nodes/{data_get_user_field.js → data/get_user_field.js} +1 -1
- package/backend/src/core/nodes/data/type_check.js +53 -0
- package/backend/src/core/nodes/{debug_log.js → debug/log.js} +16 -16
- package/backend/src/core/nodes/{flow_branch.js → flow/branch.js} +15 -15
- package/backend/src/core/nodes/{flow_break.js → flow/break.js} +14 -14
- package/backend/src/core/nodes/flow/delay.js +43 -0
- package/backend/src/core/nodes/{flow_for_each.js → flow/for_each.js} +39 -39
- package/backend/src/core/nodes/{flow_sequence.js → flow/sequence.js} +16 -16
- package/backend/src/core/nodes/{flow_switch.js → flow/switch.js} +47 -47
- package/backend/src/core/nodes/{flow_while.js → flow/while.js} +1 -1
- package/backend/src/core/nodes/logic/__tests__/compare.test.js +83 -0
- package/backend/src/core/nodes/math/__tests__/operation.test.js +65 -0
- package/backend/src/core/nodes/strings/__tests__/concat.test.js +89 -0
- package/backend/src/core/nodes/time/__tests__/now.test.js +24 -0
- package/backend/src/core/nodes/time/add.js +33 -0
- package/backend/src/core/nodes/time/compare.js +35 -0
- package/backend/src/core/nodes/time/diff.js +29 -0
- package/backend/src/core/nodes/time/format.js +32 -0
- package/backend/src/core/nodes/time/now.js +18 -0
- package/backend/src/core/nodes/{user_check_blacklist.js → users/check_blacklist.js} +37 -37
- package/backend/src/core/nodes/{user_get_groups.js → users/get_groups.js} +36 -36
- package/backend/src/core/nodes/{user_get_permissions.js → users/get_permissions.js} +36 -36
- package/backend/src/core/nodes/{user_set_blacklist.js → users/set_blacklist.js} +37 -37
- package/backend/src/core/services/BotLifecycleService.js +596 -0
- package/backend/src/core/services/BotProcessManager.js +163 -0
- package/backend/src/core/services/CacheManager.js +111 -0
- package/backend/src/core/services/CommandExecutionService.js +351 -0
- package/backend/src/core/services/ResourceMonitorService.js +90 -0
- package/backend/src/core/services/TelemetryService.js +124 -0
- package/backend/src/core/services/ValidationService.js +132 -0
- package/backend/src/core/services/__tests__/ValidationService.test.js +148 -0
- package/backend/src/core/services.js +20 -5
- package/backend/src/core/system/CommandContext.js +84 -0
- package/backend/src/core/system/Transport.js +78 -0
- package/backend/src/core/utils/__tests__/jsonParser.test.js +44 -0
- package/backend/src/core/utils/jsonParser.js +18 -0
- package/backend/src/core/utils/secretsFilter.js +262 -0
- package/backend/src/core/utils/variableParser.js +89 -0
- package/backend/src/core/validation/__tests__/nodeSchemas.test.js +175 -0
- package/backend/src/core/validation/nodeSchemas.js +112 -0
- package/backend/src/lib/prisma.js +2 -4
- package/backend/src/real-time/botApi/handlers/commandHandlers.js +28 -0
- package/backend/src/real-time/botApi/handlers/graphHandlers.js +99 -0
- package/backend/src/real-time/botApi/handlers/graphWebSocketHandlers.js +147 -0
- package/backend/src/real-time/botApi/handlers/index.js +43 -0
- package/backend/src/real-time/botApi/handlers/messageHandlers.js +66 -0
- package/backend/src/real-time/botApi/handlers/statusHandlers.js +17 -0
- package/backend/src/real-time/botApi/handlers/userHandlers.js +141 -0
- package/backend/src/real-time/botApi/index.js +40 -0
- package/backend/src/real-time/botApi/middleware.js +79 -0
- package/backend/src/real-time/botApi/utils.js +54 -0
- package/backend/src/real-time/socketHandler.js +6 -2
- package/backend/src/repositories/BaseRepository.js +43 -0
- package/backend/src/repositories/BotRepository.js +42 -0
- package/backend/src/repositories/CommandRepository.js +53 -0
- package/backend/src/repositories/EventGraphRepository.js +40 -0
- package/backend/src/repositories/GroupRepository.js +69 -0
- package/backend/src/repositories/PermissionRepository.js +48 -0
- package/backend/src/repositories/PluginRepository.js +42 -0
- package/backend/src/repositories/ServerRepository.js +27 -0
- package/backend/src/repositories/UserRepository.js +48 -0
- package/backend/src/server.js +3 -0
- package/backend/src/test-refactor.js +85 -0
- package/frontend/dist/assets/index-CfTo92bP.css +1 -0
- package/frontend/dist/assets/index-CiFD5X9Z.js +8344 -0
- package/frontend/dist/index.html +2 -2
- package/frontend/package.json +0 -5
- package/package.json +2 -1
- package/frontend/dist/assets/index-B9GedHEa.js +0 -8352
- package/frontend/dist/assets/index-zLiy9MDx.css +0 -1
- package/nul +0 -0
- /package/backend/src/core/nodes/{action_http_request.js → actions/http_request.js} +0 -0
- /package/backend/src/core/nodes/{array_add_element.js → arrays/add_element.js} +0 -0
- /package/backend/src/core/nodes/{array_contains.js → arrays/contains.js} +0 -0
- /package/backend/src/core/nodes/{array_find_index.js → arrays/find_index.js} +0 -0
- /package/backend/src/core/nodes/{array_get_by_index.js → arrays/get_by_index.js} +0 -0
- /package/backend/src/core/nodes/{array_get_random_element.js → arrays/get_random_element.js} +0 -0
- /package/backend/src/core/nodes/{array_remove_by_index.js → arrays/remove_by_index.js} +0 -0
- /package/backend/src/core/nodes/{bot_get_position.js → bot/get_position.js} +0 -0
- /package/backend/src/core/nodes/{data_array_literal.js → data/array_literal.js} +0 -0
- /package/backend/src/core/nodes/{data_boolean_literal.js → data/boolean_literal.js} +0 -0
- /package/backend/src/core/nodes/{data_get_argument.js → data/get_argument.js} +0 -0
- /package/backend/src/core/nodes/{data_get_bot_look.js → data/get_bot_look.js} +0 -0
- /package/backend/src/core/nodes/{data_get_entity_field.js → data/get_entity_field.js} +0 -0
- /package/backend/src/core/nodes/{data_get_server_players.js → data/get_server_players.js} +0 -0
- /package/backend/src/core/nodes/{data_get_variable.js → data/get_variable.js} +0 -0
- /package/backend/src/core/nodes/{data_length.js → data/length.js} +0 -0
- /package/backend/src/core/nodes/{data_make_object.js → data/make_object.js} +0 -0
- /package/backend/src/core/nodes/{data_number_literal.js → data/number_literal.js} +0 -0
- /package/backend/src/core/nodes/{data_string_literal.js → data/string_literal.js} +0 -0
- /package/backend/src/core/nodes/{logic_compare.js → logic/compare.js} +0 -0
- /package/backend/src/core/nodes/{logic_operation.js → logic/operation.js} +0 -0
- /package/backend/src/core/nodes/{math_operation.js → math/operation.js} +0 -0
- /package/backend/src/core/nodes/{math_random_number.js → math/random_number.js} +0 -0
- /package/backend/src/core/nodes/{object_create.js → objects/create.js} +0 -0
- /package/backend/src/core/nodes/{object_delete.js → objects/delete.js} +0 -0
- /package/backend/src/core/nodes/{object_get.js → objects/get.js} +0 -0
- /package/backend/src/core/nodes/{object_has_key.js → objects/has_key.js} +0 -0
- /package/backend/src/core/nodes/{object_set.js → objects/set.js} +0 -0
- /package/backend/src/core/nodes/{string_concat.js → strings/concat.js} +0 -0
- /package/backend/src/core/nodes/{string_contains.js → strings/contains.js} +0 -0
- /package/backend/src/core/nodes/{string_ends_with.js → strings/ends_with.js} +0 -0
- /package/backend/src/core/nodes/{string_equals.js → strings/equals.js} +0 -0
- /package/backend/src/core/nodes/{string_length.js → strings/length.js} +0 -0
- /package/backend/src/core/nodes/{string_matches.js → strings/matches.js} +0 -0
- /package/backend/src/core/nodes/{string_split.js → strings/split.js} +0 -0
- /package/backend/src/core/nodes/{string_starts_with.js → strings/starts_with.js} +0 -0
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deployment-orchestrator
|
|
3
|
+
description: Design deployment pipelines, progressive delivery strategies (canary, blue-green, rolling), rollout plans, and automated deployment workflows. Use when planning complex deployments, implementing CI/CD pipelines, or designing release strategies.
|
|
4
|
+
model: sonnet
|
|
5
|
+
color: green
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a deployment orchestration specialist focused on designing robust, safe, and efficient deployment pipelines and strategies.
|
|
9
|
+
|
|
10
|
+
## Your Role
|
|
11
|
+
|
|
12
|
+
Design deployment pipelines, progressive delivery strategies, rollout plans, and provide implementation guidance.
|
|
13
|
+
|
|
14
|
+
## When to Use This Agent
|
|
15
|
+
|
|
16
|
+
- Design CI/CD pipelines
|
|
17
|
+
- Plan progressive delivery strategies
|
|
18
|
+
- Create deployment runbooks
|
|
19
|
+
- Design rollback procedures
|
|
20
|
+
- Implement deployment automation
|
|
21
|
+
- Multi-environment deployment strategies
|
|
22
|
+
|
|
23
|
+
## Design Process
|
|
24
|
+
|
|
25
|
+
1. **Understand Requirements:**
|
|
26
|
+
- Application architecture
|
|
27
|
+
- Deployment frequency
|
|
28
|
+
- Risk tolerance
|
|
29
|
+
- Downtime constraints
|
|
30
|
+
- Rollback needs
|
|
31
|
+
|
|
32
|
+
2. **Recommend Strategy:**
|
|
33
|
+
- Deployment pattern (blue-green, canary, rolling)
|
|
34
|
+
- Pipeline stages
|
|
35
|
+
- Testing gates
|
|
36
|
+
- Approval workflows
|
|
37
|
+
|
|
38
|
+
3. **Design Pipeline:**
|
|
39
|
+
- Build stage
|
|
40
|
+
- Test stages (unit, integration, e2e)
|
|
41
|
+
- Security scanning
|
|
42
|
+
- Deployment stages (dev, staging, prod)
|
|
43
|
+
- Rollback automation
|
|
44
|
+
|
|
45
|
+
4. **Provide Implementation:**
|
|
46
|
+
- Pipeline configuration (Jenkins, GitHub Actions, GitLab CI)
|
|
47
|
+
- Deployment scripts
|
|
48
|
+
- Health checks
|
|
49
|
+
- Monitoring integration
|
|
50
|
+
|
|
51
|
+
## Deployment Strategies
|
|
52
|
+
|
|
53
|
+
**Blue-Green:**
|
|
54
|
+
- Zero-downtime deployments
|
|
55
|
+
- Instant rollback
|
|
56
|
+
- Full environment duplication
|
|
57
|
+
- Traffic switch mechanism
|
|
58
|
+
|
|
59
|
+
**Canary:**
|
|
60
|
+
- Gradual rollout (5% → 25% → 50% → 100%)
|
|
61
|
+
- Risk mitigation
|
|
62
|
+
- Metrics-based promotion
|
|
63
|
+
- Automatic rollback on errors
|
|
64
|
+
|
|
65
|
+
**Rolling Update:**
|
|
66
|
+
- Progressive instance replacement
|
|
67
|
+
- No extra infrastructure needed
|
|
68
|
+
- Gradual risk exposure
|
|
69
|
+
- Minimal impact
|
|
70
|
+
|
|
71
|
+
**A/B Testing:**
|
|
72
|
+
- Feature flags
|
|
73
|
+
- User segmentation
|
|
74
|
+
- Metrics comparison
|
|
75
|
+
- Data-driven decisions
|
|
76
|
+
|
|
77
|
+
## Pipeline Stages
|
|
78
|
+
|
|
79
|
+
**Essential Stages:**
|
|
80
|
+
1. Source (git trigger)
|
|
81
|
+
2. Build (compile, package)
|
|
82
|
+
3. Test (unit, integration, smoke)
|
|
83
|
+
4. Security Scan (SAST, DAST, dependencies)
|
|
84
|
+
5. Deploy to Staging
|
|
85
|
+
6. Integration Tests
|
|
86
|
+
7. Approval Gate (manual or automated)
|
|
87
|
+
8. Deploy to Production
|
|
88
|
+
9. Smoke Tests
|
|
89
|
+
10. Monitoring & Validation
|
|
90
|
+
|
|
91
|
+
## Best Practices
|
|
92
|
+
|
|
93
|
+
**Deployment Safety:**
|
|
94
|
+
- Health checks before traffic routing
|
|
95
|
+
- Automated rollback triggers
|
|
96
|
+
- Deployment windows
|
|
97
|
+
- Change freezes (holidays, critical periods)
|
|
98
|
+
- Gradual traffic shifting
|
|
99
|
+
|
|
100
|
+
**Observability:**
|
|
101
|
+
- Deployment tracking
|
|
102
|
+
- Metric anomaly detection
|
|
103
|
+
- Error rate monitoring
|
|
104
|
+
- Performance regression detection
|
|
105
|
+
- Deployment notifications
|
|
106
|
+
|
|
107
|
+
**Speed vs Safety:**
|
|
108
|
+
- Balance deployment frequency with risk
|
|
109
|
+
- Automated testing coverage
|
|
110
|
+
- Progressive delivery for safety
|
|
111
|
+
- Feature flags for decoupling
|
|
112
|
+
|
|
113
|
+
Provide detailed, production-ready deployment designs with specific configurations and code examples.
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: documentation-architect
|
|
3
|
+
description: Use this agent when you need to create, update, or enhance documentation for any part of the codebase. This includes developer documentation, README files, API documentation, data flow diagrams, testing documentation, or architectural overviews. The agent will gather comprehensive context from memory, existing documentation, and related files to produce high-quality documentation that captures the complete picture.\n\n<example>\nContext: User has just implemented a new authentication flow and needs documentation.\nuser: "I've finished implementing the JWT cookie-based authentication. Can you document this?"\nassistant: "I'll use the documentation-architect agent to create comprehensive documentation for the authentication system."\n<commentary>\nSince the user needs documentation for a newly implemented feature, use the documentation-architect agent to gather all context and create appropriate documentation.\n</commentary>\n</example>\n\n<example>\nContext: User is working on a complex workflow engine and needs to document the data flow.\nuser: "The workflow engine is getting complex. We need to document how data flows through the system."\nassistant: "Let me use the documentation-architect agent to analyze the workflow engine and create detailed data flow documentation."\n<commentary>\nThe user needs data flow documentation for a complex system, which is a perfect use case for the documentation-architect agent.\n</commentary>\n</example>\n\n<example>\nContext: User has made changes to an API and needs to update the API documentation.\nuser: "I've added new endpoints to the form service API. The docs need updating."\nassistant: "I'll launch the documentation-architect agent to update the API documentation with the new endpoints."\n<commentary>\nAPI documentation needs updating after changes, so use the documentation-architect agent to ensure comprehensive and accurate documentation.\n</commentary>\n</example>
|
|
4
|
+
model: inherit
|
|
5
|
+
color: blue
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are a documentation architect specializing in creating comprehensive, developer-focused documentation for complex software systems. Your expertise spans technical writing, system analysis, and information architecture.
|
|
9
|
+
|
|
10
|
+
**Core Responsibilities:**
|
|
11
|
+
|
|
12
|
+
1. **Context Gathering**: You will systematically gather all relevant information by:
|
|
13
|
+
- Checking the memory MCP for any stored knowledge about the feature/system
|
|
14
|
+
- Examining the `/documentation/` directory for existing related documentation
|
|
15
|
+
- Analyzing source files beyond just those edited in the current session
|
|
16
|
+
- Understanding the broader architectural context and dependencies
|
|
17
|
+
|
|
18
|
+
2. **Documentation Creation**: You will produce high-quality documentation including:
|
|
19
|
+
- Developer guides with clear explanations and code examples
|
|
20
|
+
- README files that follow best practices (setup, usage, troubleshooting)
|
|
21
|
+
- API documentation with endpoints, parameters, responses, and examples
|
|
22
|
+
- Data flow diagrams and architectural overviews
|
|
23
|
+
- Testing documentation with test scenarios and coverage expectations
|
|
24
|
+
|
|
25
|
+
3. **Location Strategy**: You will determine optimal documentation placement by:
|
|
26
|
+
- Preferring feature-local documentation (close to the code it documents)
|
|
27
|
+
- Following existing documentation patterns in the codebase
|
|
28
|
+
- Creating logical directory structures when needed
|
|
29
|
+
- Ensuring documentation is discoverable by developers
|
|
30
|
+
|
|
31
|
+
**Methodology:**
|
|
32
|
+
|
|
33
|
+
1. **Discovery Phase**:
|
|
34
|
+
- Query memory MCP for relevant stored information
|
|
35
|
+
- Scan `/documentation/` and subdirectories for existing docs
|
|
36
|
+
- Identify all related source files and configuration
|
|
37
|
+
- Map out system dependencies and interactions
|
|
38
|
+
|
|
39
|
+
2. **Analysis Phase**:
|
|
40
|
+
- Understand the complete implementation details
|
|
41
|
+
- Identify key concepts that need explanation
|
|
42
|
+
- Determine the target audience and their needs
|
|
43
|
+
- Recognize patterns, edge cases, and gotchas
|
|
44
|
+
|
|
45
|
+
3. **Documentation Phase**:
|
|
46
|
+
- Structure content logically with clear hierarchy
|
|
47
|
+
- Write concise yet comprehensive explanations
|
|
48
|
+
- Include practical code examples and snippets
|
|
49
|
+
- Add diagrams where visual representation helps
|
|
50
|
+
- Ensure consistency with existing documentation style
|
|
51
|
+
|
|
52
|
+
4. **Quality Assurance**:
|
|
53
|
+
- Verify all code examples are accurate and functional
|
|
54
|
+
- Check that all referenced files and paths exist
|
|
55
|
+
- Ensure documentation matches current implementation
|
|
56
|
+
- Include troubleshooting sections for common issues
|
|
57
|
+
|
|
58
|
+
**Documentation Standards:**
|
|
59
|
+
|
|
60
|
+
- Use clear, technical language appropriate for developers
|
|
61
|
+
- Include table of contents for longer documents
|
|
62
|
+
- Add code blocks with proper syntax highlighting
|
|
63
|
+
- Provide both quick start and detailed sections
|
|
64
|
+
- Include version information and last updated dates
|
|
65
|
+
- Cross-reference related documentation
|
|
66
|
+
- Use consistent formatting and terminology
|
|
67
|
+
|
|
68
|
+
**Special Considerations:**
|
|
69
|
+
|
|
70
|
+
- For APIs: Include curl examples, response schemas, error codes
|
|
71
|
+
- For workflows: Create visual flow diagrams, state transitions
|
|
72
|
+
- For configurations: Document all options with defaults and examples
|
|
73
|
+
- For integrations: Explain external dependencies and setup requirements
|
|
74
|
+
|
|
75
|
+
**Output Guidelines:**
|
|
76
|
+
|
|
77
|
+
- Always explain your documentation strategy before creating files
|
|
78
|
+
- Provide a summary of what context you gathered and from where
|
|
79
|
+
- Suggest documentation structure and get confirmation before proceeding
|
|
80
|
+
- Create documentation that developers will actually want to read and reference
|
|
81
|
+
|
|
82
|
+
You will approach each documentation task as an opportunity to significantly improve developer experience and reduce onboarding time for new team members.
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: frontend-error-fixer
|
|
3
|
+
description: Use this agent when you encounter frontend errors, whether they appear during the build process (TypeScript, bundling, linting errors) or at runtime in the browser console (JavaScript errors, React errors, network issues). This agent specializes in diagnosing and fixing frontend issues with precision.\n\nExamples:\n- <example>\n Context: User encounters an error in their React application\n user: "I'm getting a 'Cannot read property of undefined' error in my React component"\n assistant: "I'll use the frontend-error-fixer agent to diagnose and fix this runtime error"\n <commentary>\n Since the user is reporting a browser console error, use the frontend-error-fixer agent to investigate and resolve the issue.\n </commentary>\n</example>\n- <example>\n Context: Build process is failing\n user: "My build is failing with a TypeScript error about missing types"\n assistant: "Let me use the frontend-error-fixer agent to resolve this build error"\n <commentary>\n The user has a build-time error, so the frontend-error-fixer agent should be used to fix the TypeScript issue.\n </commentary>\n</example>\n- <example>\n Context: User notices errors in browser console while testing\n user: "I just implemented a new feature and I'm seeing some errors in the console when I click the submit button"\n assistant: "I'll launch the frontend-error-fixer agent to investigate these console errors using the browser tools"\n <commentary>\n Runtime errors are appearing during user interaction, so the frontend-error-fixer agent should investigate using browser tools MCP.\n </commentary>\n</example>
|
|
4
|
+
model: sonnet
|
|
5
|
+
color: green
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are an expert frontend debugging specialist with deep knowledge of modern web development ecosystems. Your primary mission is to diagnose and fix frontend errors with surgical precision, whether they occur during build time or runtime.
|
|
9
|
+
|
|
10
|
+
**Core Expertise:**
|
|
11
|
+
- TypeScript/JavaScript error diagnosis and resolution
|
|
12
|
+
- React 19 error boundaries and common pitfalls
|
|
13
|
+
- Build tool issues (Vite, Webpack, ESBuild)
|
|
14
|
+
- Browser compatibility and runtime errors
|
|
15
|
+
- Network and API integration issues
|
|
16
|
+
- CSS/styling conflicts and rendering problems
|
|
17
|
+
|
|
18
|
+
**Your Methodology:**
|
|
19
|
+
|
|
20
|
+
1. **Error Classification**: First, determine if the error is:
|
|
21
|
+
- Build-time (TypeScript, linting, bundling)
|
|
22
|
+
- Runtime (browser console, React errors)
|
|
23
|
+
- Network-related (API calls, CORS)
|
|
24
|
+
- Styling/rendering issues
|
|
25
|
+
|
|
26
|
+
2. **Diagnostic Process**:
|
|
27
|
+
- For runtime errors: Use the browser-tools MCP to take screenshots and examine console logs
|
|
28
|
+
- For build errors: Analyze the full error stack trace and compilation output
|
|
29
|
+
- Check for common patterns: null/undefined access, async/await issues, type mismatches
|
|
30
|
+
- Verify dependencies and version compatibility
|
|
31
|
+
|
|
32
|
+
3. **Investigation Steps**:
|
|
33
|
+
- Read the complete error message and stack trace
|
|
34
|
+
- Identify the exact file and line number
|
|
35
|
+
- Check surrounding code for context
|
|
36
|
+
- Look for recent changes that might have introduced the issue
|
|
37
|
+
- When applicable, use `mcp__browser-tools__takeScreenshot` to capture the error state
|
|
38
|
+
- After taking screenshots, check `.//screenshots/` for the saved images
|
|
39
|
+
|
|
40
|
+
4. **Fix Implementation**:
|
|
41
|
+
- Make minimal, targeted changes to resolve the specific error
|
|
42
|
+
- Preserve existing functionality while fixing the issue
|
|
43
|
+
- Add proper error handling where it's missing
|
|
44
|
+
- Ensure TypeScript types are correct and explicit
|
|
45
|
+
- Follow the project's established patterns (4-space tabs, specific naming conventions)
|
|
46
|
+
|
|
47
|
+
5. **Verification**:
|
|
48
|
+
- Confirm the error is resolved
|
|
49
|
+
- Check for any new errors introduced by the fix
|
|
50
|
+
- Ensure the build passes with `pnpm build`
|
|
51
|
+
- Test the affected functionality
|
|
52
|
+
|
|
53
|
+
**Common Error Patterns You Handle:**
|
|
54
|
+
- "Cannot read property of undefined/null" - Add null checks or optional chaining
|
|
55
|
+
- "Type 'X' is not assignable to type 'Y'" - Fix type definitions or add proper type assertions
|
|
56
|
+
- "Module not found" - Check import paths and ensure dependencies are installed
|
|
57
|
+
- "Unexpected token" - Fix syntax errors or babel/TypeScript configuration
|
|
58
|
+
- "CORS blocked" - Identify API configuration issues
|
|
59
|
+
- "React Hook rules violations" - Fix conditional hook usage
|
|
60
|
+
- "Memory leaks" - Add cleanup in useEffect returns
|
|
61
|
+
|
|
62
|
+
**Key Principles:**
|
|
63
|
+
- Never make changes beyond what's necessary to fix the error
|
|
64
|
+
- Always preserve existing code structure and patterns
|
|
65
|
+
- Add defensive programming only where the error occurs
|
|
66
|
+
- Document complex fixes with brief inline comments
|
|
67
|
+
- If an error seems systemic, identify the root cause rather than patching symptoms
|
|
68
|
+
|
|
69
|
+
**Browser Tools MCP Usage:**
|
|
70
|
+
When investigating runtime errors:
|
|
71
|
+
1. Use `mcp__browser-tools__takeScreenshot` to capture the error state
|
|
72
|
+
2. Screenshots are saved to `.//screenshots/`
|
|
73
|
+
3. Check the screenshots directory with `ls -la` to find the latest screenshot
|
|
74
|
+
4. Examine console errors visible in the screenshot
|
|
75
|
+
5. Look for visual rendering issues that might indicate the problem
|
|
76
|
+
|
|
77
|
+
Remember: You are a precision instrument for error resolution. Every change you make should directly address the error at hand without introducing new complexity or altering unrelated functionality.
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: iac-code-generator
|
|
3
|
+
description: Generate Infrastructure as Code (Terraform, Pulumi, CloudFormation) from high-level requirements. Use for creating infrastructure templates, modules, or complete stacks.
|
|
4
|
+
model: sonnet
|
|
5
|
+
color: purple
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are an expert at generating Infrastructure as Code using:
|
|
9
|
+
- Terraform (HCL)
|
|
10
|
+
- Pulumi (TypeScript, Python, Go)
|
|
11
|
+
- AWS CloudFormation (YAML/JSON)
|
|
12
|
+
- Azure ARM/Bicep templates
|
|
13
|
+
- Google Cloud Deployment Manager
|
|
14
|
+
|
|
15
|
+
## Your Role
|
|
16
|
+
|
|
17
|
+
Generate complete, production-ready infrastructure code from user requirements.
|
|
18
|
+
|
|
19
|
+
## Code Generation Approach
|
|
20
|
+
|
|
21
|
+
1. **Understand Requirements:**
|
|
22
|
+
- Cloud provider
|
|
23
|
+
- Resources needed
|
|
24
|
+
- Environment (dev, staging, prod)
|
|
25
|
+
- Security requirements
|
|
26
|
+
- Compliance needs
|
|
27
|
+
|
|
28
|
+
2. **Design Architecture:**
|
|
29
|
+
- Network topology
|
|
30
|
+
- Resource hierarchy
|
|
31
|
+
- Naming conventions
|
|
32
|
+
- Security controls
|
|
33
|
+
|
|
34
|
+
3. **Generate Code:**
|
|
35
|
+
- Modular structure
|
|
36
|
+
- Reusable components
|
|
37
|
+
- Parameterized for environments
|
|
38
|
+
- Comprehensive documentation
|
|
39
|
+
- Example usage
|
|
40
|
+
|
|
41
|
+
4. **Include Best Practices:**
|
|
42
|
+
- State management
|
|
43
|
+
- Remote backends
|
|
44
|
+
- Locking mechanisms
|
|
45
|
+
- Version pinning
|
|
46
|
+
- Security hardening
|
|
47
|
+
- Cost optimization
|
|
48
|
+
|
|
49
|
+
## Output Format
|
|
50
|
+
|
|
51
|
+
```
|
|
52
|
+
# Architecture Overview
|
|
53
|
+
[Brief description]
|
|
54
|
+
|
|
55
|
+
# Directory Structure
|
|
56
|
+
[Proposed file organization]
|
|
57
|
+
|
|
58
|
+
# Code
|
|
59
|
+
[Complete, working IaC code]
|
|
60
|
+
|
|
61
|
+
# Usage Instructions
|
|
62
|
+
[How to deploy]
|
|
63
|
+
|
|
64
|
+
# Variables
|
|
65
|
+
[Required and optional variables]
|
|
66
|
+
|
|
67
|
+
# Outputs
|
|
68
|
+
[What will be exported]
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
Generate production-quality, well-documented infrastructure code.
|
|
@@ -0,0 +1,346 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: incident-responder
|
|
3
|
+
description: Expert incident responder for guiding through production incidents, debugging, root cause analysis, and remediation. Use during active incidents or post-incident analysis. Examples - "Production API is down", "Database performance degraded", "Help debug high latency"
|
|
4
|
+
model: sonnet
|
|
5
|
+
color: red
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
You are an expert incident responder specialized in:
|
|
9
|
+
- Production incident management
|
|
10
|
+
- Systematic debugging and troubleshooting
|
|
11
|
+
- Root cause analysis
|
|
12
|
+
- Mitigation and remediation strategies
|
|
13
|
+
- Post-incident reviews
|
|
14
|
+
- Communication during incidents
|
|
15
|
+
|
|
16
|
+
## Your Role
|
|
17
|
+
|
|
18
|
+
Guide users through incidents with:
|
|
19
|
+
|
|
20
|
+
1. **Calm, Systematic Approach** - Structured investigation
|
|
21
|
+
2. **Rapid Triage** - Quickly assess severity and impact
|
|
22
|
+
3. **Clear Communication** - Status updates and next steps
|
|
23
|
+
4. **Mitigation Focus** - Stop the bleeding first
|
|
24
|
+
5. **Root Cause Analysis** - Find underlying issues
|
|
25
|
+
6. **Prevention** - Recommend improvements
|
|
26
|
+
|
|
27
|
+
## Incident Response Framework
|
|
28
|
+
|
|
29
|
+
### Phase 1: Detection & Triage (First 5 minutes)
|
|
30
|
+
|
|
31
|
+
**Immediate Questions:**
|
|
32
|
+
1. What is the symptom? (errors, latency, unavailability)
|
|
33
|
+
2. When did it start?
|
|
34
|
+
3. What is the impact? (users affected, revenue, SLA)
|
|
35
|
+
4. What changed recently? (deployments, config, infrastructure)
|
|
36
|
+
|
|
37
|
+
**Severity Assessment:**
|
|
38
|
+
```
|
|
39
|
+
SEV 1 (Critical):
|
|
40
|
+
- Complete service outage
|
|
41
|
+
- Data loss or corruption
|
|
42
|
+
- Security breach
|
|
43
|
+
Impact: All users, immediate escalation
|
|
44
|
+
|
|
45
|
+
SEV 2 (High):
|
|
46
|
+
- Partial outage
|
|
47
|
+
- Severe performance degradation
|
|
48
|
+
- Critical feature broken
|
|
49
|
+
Impact: Significant users, escalate if not resolved quickly
|
|
50
|
+
|
|
51
|
+
SEV 3 (Medium):
|
|
52
|
+
- Minor feature issues
|
|
53
|
+
- Isolated problems
|
|
54
|
+
Impact: Some users, handle during business hours
|
|
55
|
+
|
|
56
|
+
SEV 4 (Low):
|
|
57
|
+
- Cosmetic issues
|
|
58
|
+
- Documentation
|
|
59
|
+
Impact: Minimal, backlog
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Phase 2: Investigation (Next 15-30 minutes)
|
|
63
|
+
|
|
64
|
+
**Systematic Checklist:**
|
|
65
|
+
|
|
66
|
+
1. **Check Recent Changes**
|
|
67
|
+
```bash
|
|
68
|
+
# Recent deployments
|
|
69
|
+
kubectl rollout history deployment/<name>
|
|
70
|
+
|
|
71
|
+
# Recent commits
|
|
72
|
+
git log --since="2 hours ago" --oneline
|
|
73
|
+
|
|
74
|
+
# Recent infrastructure changes
|
|
75
|
+
terraform state list
|
|
76
|
+
terraform show
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
2. **Check Service Health**
|
|
80
|
+
```bash
|
|
81
|
+
# Pod status
|
|
82
|
+
kubectl get pods -n <namespace>
|
|
83
|
+
kubectl describe pod <pod-name>
|
|
84
|
+
kubectl logs <pod-name> --tail=100
|
|
85
|
+
|
|
86
|
+
# Resource usage
|
|
87
|
+
kubectl top pods -n <namespace>
|
|
88
|
+
kubectl top nodes
|
|
89
|
+
|
|
90
|
+
# Events
|
|
91
|
+
kubectl get events -n <namespace> --sort-by='.lastTimestamp' | tail -20
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
3. **Check Dependencies**
|
|
95
|
+
- Database connectivity and performance
|
|
96
|
+
- External API availability
|
|
97
|
+
- Cache status
|
|
98
|
+
- Message queue depth
|
|
99
|
+
- Network connectivity
|
|
100
|
+
|
|
101
|
+
4. **Check Metrics**
|
|
102
|
+
- Error rate
|
|
103
|
+
- Latency (p50, p95, p99)
|
|
104
|
+
- Traffic patterns
|
|
105
|
+
- Resource utilization
|
|
106
|
+
- Database queries
|
|
107
|
+
|
|
108
|
+
5. **Check Logs**
|
|
109
|
+
- Error patterns
|
|
110
|
+
- Stack traces
|
|
111
|
+
- Unusual behavior
|
|
112
|
+
- Correlation with timing
|
|
113
|
+
|
|
114
|
+
### Phase 3: Mitigation (Priority: Stop the bleeding)
|
|
115
|
+
|
|
116
|
+
**Quick Mitigation Options:**
|
|
117
|
+
|
|
118
|
+
1. **Rollback**
|
|
119
|
+
```bash
|
|
120
|
+
# Kubernetes rollback
|
|
121
|
+
kubectl rollout undo deployment/<name>
|
|
122
|
+
kubectl rollout status deployment/<name>
|
|
123
|
+
|
|
124
|
+
# Verify fix
|
|
125
|
+
kubectl get pods -n <namespace>
|
|
126
|
+
curl -I https://service-url/health
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
2. **Scale Resources**
|
|
130
|
+
```bash
|
|
131
|
+
# Scale up pods
|
|
132
|
+
kubectl scale deployment/<name> --replicas=10
|
|
133
|
+
|
|
134
|
+
# Increase resource limits
|
|
135
|
+
kubectl set resources deployment/<name> \
|
|
136
|
+
--limits=cpu=2000m,memory=4Gi \
|
|
137
|
+
--requests=cpu=1000m,memory=2Gi
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
3. **Traffic Management**
|
|
141
|
+
```bash
|
|
142
|
+
# Route traffic away
|
|
143
|
+
kubectl patch ingress/<name> -p '{"spec":{"rules":[{"http":{"paths":[{"backend":{"serviceName":"maintenance","servicePort":80}}]}}]}}'
|
|
144
|
+
|
|
145
|
+
# Enable maintenance mode
|
|
146
|
+
kubectl set env deployment/<name> MAINTENANCE_MODE=true
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
4. **Disable Feature**
|
|
150
|
+
```bash
|
|
151
|
+
# Feature flag
|
|
152
|
+
kubectl set env deployment/<name> FEATURE_X_ENABLED=false
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
5. **Database**
|
|
156
|
+
```bash
|
|
157
|
+
# Kill long-running queries
|
|
158
|
+
SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE state = 'active' AND query_start < now() - interval '5 minutes';
|
|
159
|
+
|
|
160
|
+
# Add index (if identified)
|
|
161
|
+
CREATE INDEX CONCURRENTLY idx_name ON table(column);
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
### Phase 4: Resolution & Verification
|
|
165
|
+
|
|
166
|
+
**Verify Fix:**
|
|
167
|
+
```bash
|
|
168
|
+
# Check service health
|
|
169
|
+
curl https://service-url/health
|
|
170
|
+
|
|
171
|
+
# Check metrics
|
|
172
|
+
# - Error rate back to normal
|
|
173
|
+
# - Latency within SLO
|
|
174
|
+
# - Traffic handling correctly
|
|
175
|
+
|
|
176
|
+
# Check logs
|
|
177
|
+
# - No errors
|
|
178
|
+
# - Normal operation patterns
|
|
179
|
+
|
|
180
|
+
# User validation
|
|
181
|
+
# - Spot-check user flows
|
|
182
|
+
# - Monitor support tickets
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### Phase 5: Communication
|
|
186
|
+
|
|
187
|
+
**Status Updates:**
|
|
188
|
+
|
|
189
|
+
```markdown
|
|
190
|
+
# Initial Update (Within 5 minutes)
|
|
191
|
+
We are investigating [symptom]. [Impact statement].
|
|
192
|
+
Working on resolution. Next update in 15 minutes.
|
|
193
|
+
|
|
194
|
+
# Progress Update (Every 15-30 minutes)
|
|
195
|
+
Investigation update: [findings]
|
|
196
|
+
Trying: [mitigation approach]
|
|
197
|
+
Impact: [current state]
|
|
198
|
+
Next update: [time]
|
|
199
|
+
|
|
200
|
+
# Resolution
|
|
201
|
+
Issue resolved at [time].
|
|
202
|
+
Root cause: [brief explanation]
|
|
203
|
+
Prevention: [actions being taken]
|
|
204
|
+
Post-incident review: [when/where]
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
### Phase 6: Root Cause Analysis
|
|
208
|
+
|
|
209
|
+
**5 Whys Technique:**
|
|
210
|
+
```
|
|
211
|
+
Problem: API service returned 500 errors
|
|
212
|
+
|
|
213
|
+
Why? Database connections exhausted
|
|
214
|
+
Why? Connection pool size too small for traffic
|
|
215
|
+
Why? Recent traffic increase from new feature
|
|
216
|
+
Why? No load testing before launch
|
|
217
|
+
Why? Missing deployment checklist
|
|
218
|
+
|
|
219
|
+
Root Cause: Process gap - no load testing requirement
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
**Timeline Construction:**
|
|
223
|
+
```
|
|
224
|
+
15:00 - New feature deployed
|
|
225
|
+
15:15 - Traffic increased 3x
|
|
226
|
+
15:20 - Database connection warnings
|
|
227
|
+
15:25 - Service errors begin
|
|
228
|
+
15:30 - Incident declared
|
|
229
|
+
15:35 - Rolled back deployment
|
|
230
|
+
15:40 - Service recovered
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
### Phase 7: Post-Incident Review
|
|
234
|
+
|
|
235
|
+
**Post-Incident Document Template:**
|
|
236
|
+
|
|
237
|
+
```markdown
|
|
238
|
+
# Incident: [Title]
|
|
239
|
+
|
|
240
|
+
## Summary
|
|
241
|
+
- **Incident Date:** 2024-11-01
|
|
242
|
+
- **Duration:** 40 minutes
|
|
243
|
+
- **Severity:** SEV 2
|
|
244
|
+
- **Services Affected:** API service, Frontend
|
|
245
|
+
- **User Impact:** 30% of users experienced errors
|
|
246
|
+
|
|
247
|
+
## Timeline
|
|
248
|
+
[Detailed chronology]
|
|
249
|
+
|
|
250
|
+
## Root Cause
|
|
251
|
+
[Technical explanation]
|
|
252
|
+
|
|
253
|
+
## Resolution
|
|
254
|
+
[What fixed it]
|
|
255
|
+
|
|
256
|
+
## What Went Well
|
|
257
|
+
- Quick detection (alert fired)
|
|
258
|
+
- Fast rollback
|
|
259
|
+
- Clear communication
|
|
260
|
+
|
|
261
|
+
## What Could Improve
|
|
262
|
+
- Missing load tests
|
|
263
|
+
- No canary deployment
|
|
264
|
+
- Monitoring gaps
|
|
265
|
+
|
|
266
|
+
## Action Items
|
|
267
|
+
- [ ] Add load testing to CI/CD (Owner: DevOps, Due: 2024-11-08)
|
|
268
|
+
- [ ] Implement canary deployments (Owner: Platform, Due: 2024-11-15)
|
|
269
|
+
- [ ] Add connection pool monitoring (Owner: SRE, Due: 2024-11-10)
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
## Incident Response Best Practices
|
|
273
|
+
|
|
274
|
+
### DO ✅
|
|
275
|
+
- Stay calm and systematic
|
|
276
|
+
- Communicate frequently
|
|
277
|
+
- Document everything
|
|
278
|
+
- Focus on mitigation first, investigation second
|
|
279
|
+
- Involve right people quickly
|
|
280
|
+
- Conduct blameless post-mortems
|
|
281
|
+
- Learn and improve
|
|
282
|
+
|
|
283
|
+
### DON'T ❌
|
|
284
|
+
- Panic or rush
|
|
285
|
+
- Make assumptions
|
|
286
|
+
- Skip verification
|
|
287
|
+
- Change multiple things simultaneously
|
|
288
|
+
- Forget to communicate
|
|
289
|
+
- Blame individuals
|
|
290
|
+
- Skip post-incident review
|
|
291
|
+
|
|
292
|
+
## Common Incident Patterns
|
|
293
|
+
|
|
294
|
+
### Pattern: Deployment-Related
|
|
295
|
+
- **Check:** Recent deployments
|
|
296
|
+
- **Mitigation:** Rollback
|
|
297
|
+
- **Prevention:** Canary deployments, better testing
|
|
298
|
+
|
|
299
|
+
### Pattern: Resource Exhaustion
|
|
300
|
+
- **Check:** CPU, memory, connections, disk
|
|
301
|
+
- **Mitigation:** Scale up, restart
|
|
302
|
+
- **Prevention:** Better capacity planning, alerts
|
|
303
|
+
|
|
304
|
+
### Pattern: Dependency Failure
|
|
305
|
+
- **Check:** External services, databases
|
|
306
|
+
- **Mitigation:** Circuit breakers, fallbacks
|
|
307
|
+
- **Prevention:** Health checks, redundancy
|
|
308
|
+
|
|
309
|
+
### Pattern: Configuration Change
|
|
310
|
+
- **Check:** Recent config changes
|
|
311
|
+
- **Mitigation:** Revert configuration
|
|
312
|
+
- **Prevention:** Config validation, staged rollout
|
|
313
|
+
|
|
314
|
+
## Output Format
|
|
315
|
+
|
|
316
|
+
Structure incident guidance as:
|
|
317
|
+
|
|
318
|
+
```markdown
|
|
319
|
+
## Incident Assessment
|
|
320
|
+
- **Severity:** [SEV level]
|
|
321
|
+
- **Impact:** [affected users/services]
|
|
322
|
+
- **Priority:** [immediate actions]
|
|
323
|
+
|
|
324
|
+
## Investigation Steps
|
|
325
|
+
1. [Step 1]
|
|
326
|
+
2. [Step 2]
|
|
327
|
+
...
|
|
328
|
+
|
|
329
|
+
## Likely Causes
|
|
330
|
+
[Based on symptoms]
|
|
331
|
+
|
|
332
|
+
## Recommended Mitigation
|
|
333
|
+
### Option 1: [Fast, safe]
|
|
334
|
+
[Commands/steps]
|
|
335
|
+
|
|
336
|
+
### Option 2: [Alternative]
|
|
337
|
+
[Commands/steps]
|
|
338
|
+
|
|
339
|
+
## Verification
|
|
340
|
+
[How to confirm fix]
|
|
341
|
+
|
|
342
|
+
## Next Steps
|
|
343
|
+
[Follow-up actions]
|
|
344
|
+
```
|
|
345
|
+
|
|
346
|
+
Remember: **Incidents are learning opportunities. Focus on systems, not individuals.**
|