blockmine 1.24.0 → 1.25.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.
Files changed (346) hide show
  1. package/CHANGELOG.md +32 -0
  2. package/README.en.md +427 -0
  3. package/README.md +40 -0
  4. package/backend/cli.js +1 -1
  5. package/backend/src/ai/plugin-assistant-system-prompt.md +664 -5
  6. package/backend/src/api/routes/bots.js +13 -0
  7. package/backend/src/api/routes/servers.js +14 -2
  8. package/backend/src/core/BotProcess.js +98 -2
  9. package/backend/src/core/PluginLoader.js +83 -3
  10. package/backend/src/core/PluginManager.js +75 -5
  11. package/backend/src/core/services/BotLifecycleService.js +186 -2
  12. package/backend/src/server.js +11 -1
  13. package/frontend/dist/assets/browser-ponyfill-DN7pwmHT.js +2 -0
  14. package/frontend/dist/assets/index-LSy71uwm.js +11261 -0
  15. package/frontend/dist/assets/index-SfhKxI4-.css +32 -0
  16. package/frontend/dist/flags/en.svg +32 -0
  17. package/frontend/dist/flags/ru.svg +5 -0
  18. package/frontend/dist/index.html +2 -2
  19. package/frontend/dist/locales/en/admin.json +100 -0
  20. package/frontend/dist/locales/en/api-keys.json +58 -0
  21. package/frontend/dist/locales/en/bots.json +110 -0
  22. package/frontend/dist/locales/en/common.json +47 -0
  23. package/frontend/dist/locales/en/configuration.json +22 -0
  24. package/frontend/dist/locales/en/console.json +10 -0
  25. package/frontend/dist/locales/en/dashboard.json +85 -0
  26. package/frontend/dist/locales/en/dialogs.json +70 -0
  27. package/frontend/dist/locales/en/event-graphs.json +50 -0
  28. package/frontend/dist/locales/en/graph-store.json +70 -0
  29. package/frontend/dist/locales/en/login.json +34 -0
  30. package/frontend/dist/locales/en/management.json +114 -0
  31. package/frontend/dist/locales/en/minecraft-viewer.json +27 -0
  32. package/frontend/dist/locales/en/nodes.json +1077 -0
  33. package/frontend/dist/locales/en/permissions.json +50 -0
  34. package/frontend/dist/locales/en/plugin-detail.json +49 -0
  35. package/frontend/dist/locales/en/plugins.json +110 -0
  36. package/frontend/dist/locales/en/proxies.json +81 -0
  37. package/frontend/dist/locales/en/servers.json +39 -0
  38. package/frontend/dist/locales/en/setup.json +17 -0
  39. package/frontend/dist/locales/en/sidebar.json +27 -0
  40. package/frontend/dist/locales/en/tasks.json +62 -0
  41. package/frontend/dist/locales/en/visual-editor.json +219 -0
  42. package/frontend/dist/locales/en/websocket.json +86 -0
  43. package/frontend/dist/locales/ru/admin.json +100 -0
  44. package/frontend/dist/locales/ru/api-keys.json +58 -0
  45. package/frontend/dist/locales/ru/bots.json +110 -0
  46. package/frontend/dist/locales/ru/common.json +49 -0
  47. package/frontend/dist/locales/ru/configuration.json +22 -0
  48. package/frontend/dist/locales/ru/console.json +10 -0
  49. package/frontend/dist/locales/ru/dashboard.json +85 -0
  50. package/frontend/dist/locales/ru/dialogs.json +70 -0
  51. package/frontend/dist/locales/ru/event-graphs.json +50 -0
  52. package/frontend/dist/locales/ru/graph-store.json +70 -0
  53. package/frontend/dist/locales/ru/login.json +34 -0
  54. package/frontend/dist/locales/ru/management.json +114 -0
  55. package/frontend/dist/locales/ru/minecraft-viewer.json +27 -0
  56. package/frontend/dist/locales/ru/nodes.json +1077 -0
  57. package/frontend/dist/locales/ru/permissions.json +50 -0
  58. package/frontend/dist/locales/ru/plugin-detail.json +49 -0
  59. package/frontend/dist/locales/ru/plugins.json +110 -0
  60. package/frontend/dist/locales/ru/proxies.json +81 -0
  61. package/frontend/dist/locales/ru/servers.json +39 -0
  62. package/frontend/dist/locales/ru/setup.json +17 -0
  63. package/frontend/dist/locales/ru/sidebar.json +27 -0
  64. package/frontend/dist/locales/ru/tasks.json +62 -0
  65. package/frontend/dist/locales/ru/visual-editor.json +221 -0
  66. package/frontend/dist/locales/ru/websocket.json +86 -0
  67. package/frontend/dist/monacoeditorwork/css.worker.bundle.js +7 -7
  68. package/frontend/dist/monacoeditorwork/html.worker.bundle.js +7 -7
  69. package/frontend/dist/monacoeditorwork/json.worker.bundle.js +7 -7
  70. package/frontend/dist/monacoeditorwork/ts.worker.bundle.js +3 -3
  71. package/frontend/package.json +4 -0
  72. package/package.json +1 -1
  73. package/screen/3dviewer.png +0 -0
  74. package/screen/console.png +0 -0
  75. package/screen/dashboard.png +0 -0
  76. package/screen/graph_collabe.png +0 -0
  77. package/screen/graph_live_debug.png +0 -0
  78. package/screen/language_selector.png +0 -0
  79. package/screen/management_command.png +0 -0
  80. package/screen/node_debug_trace.png +0 -0
  81. package/screen/plugin_/320/276/320/261/320/267/320/276/321/200.png +0 -0
  82. package/screen/websocket.png +0 -0
  83. package/screen//320/275/320/260/321/201/321/202/321/200/320/276/320/271/320/272/320/270_/320/276/321/202/320/264/320/265/320/273/321/214/320/275/321/213/321/205_/320/272/320/276/320/274/320/260/320/275/320/264_/320/272/320/260/320/266/320/264/321/203_/320/272/320/276/320/274/320/260/320/275/320/273/320/264/321/203_/320/274/320/276/320/266/320/275/320/276_/320/275/320/260/321/201/321/202/321/200/320/260/320/270/320/262/320/260/321/202/321/214.png +0 -0
  84. package/screen//320/277/320/273/320/260/320/275/320/270/321/200/320/276/320/262/321/211/320/270/320/272_/320/274/320/276/320/266/320/275/320/276_/320/267/320/260/320/264/320/260/320/262/320/260/321/202/321/214_/320/264/320/265/320/271/321/201/321/202/320/262/320/270/321/217_/320/277/320/276_/320/262/321/200/320/265/320/274/320/265/320/275/320/270.png +0 -0
  85. package/.claude/agents/README.md +0 -469
  86. package/.claude/agents/auth-route-debugger.md +0 -118
  87. package/.claude/agents/auth-route-tester.md +0 -93
  88. package/.claude/agents/auto-error-resolver.md +0 -97
  89. package/.claude/agents/build-optimizer.md +0 -236
  90. package/.claude/agents/code-architect.md +0 -34
  91. package/.claude/agents/code-architecture-reviewer.md +0 -83
  92. package/.claude/agents/code-explorer.md +0 -51
  93. package/.claude/agents/code-refactor-master.md +0 -94
  94. package/.claude/agents/code-reviewer.md +0 -46
  95. package/.claude/agents/cost-optimizer.md +0 -134
  96. package/.claude/agents/deployment-orchestrator.md +0 -113
  97. package/.claude/agents/documentation-architect.md +0 -82
  98. package/.claude/agents/frontend-error-fixer.md +0 -77
  99. package/.claude/agents/iac-code-generator.md +0 -71
  100. package/.claude/agents/incident-responder.md +0 -346
  101. package/.claude/agents/infrastructure-architect.md +0 -31
  102. package/.claude/agents/kubernetes-specialist.md +0 -56
  103. package/.claude/agents/migration-planner.md +0 -181
  104. package/.claude/agents/network-architect.md +0 -196
  105. package/.claude/agents/plan-reviewer.md +0 -52
  106. package/.claude/agents/refactor-planner.md +0 -63
  107. package/.claude/agents/security-scanner.md +0 -102
  108. package/.claude/agents/web-research-specialist.md +0 -78
  109. package/.claude/commands/cost-analysis.md +0 -315
  110. package/.claude/commands/dev-docs-update.md +0 -55
  111. package/.claude/commands/dev-docs.md +0 -51
  112. package/.claude/commands/feature-dev.md +0 -125
  113. package/.claude/commands/incident-debug.md +0 -247
  114. package/.claude/commands/infra-plan.md +0 -81
  115. package/.claude/commands/migration-plan.md +0 -478
  116. package/.claude/commands/route-research-for-testing.md +0 -37
  117. package/.claude/commands/security-review.md +0 -66
  118. package/.claude/hooks/CONFIG.md +0 -448
  119. package/.claude/hooks/README.md +0 -163
  120. package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +0 -226
  121. package/.claude/hooks/WINDOWS_HOOKS_README.md +0 -151
  122. package/.claude/hooks/add-skill-activation-banners.ts +0 -132
  123. package/.claude/hooks/comprehensive-skill-test.ts +0 -1315
  124. package/.claude/hooks/error-handling-reminder.sh +0 -12
  125. package/.claude/hooks/error-handling-reminder.ts +0 -222
  126. package/.claude/hooks/k8s-manifest-validator.sh +0 -56
  127. package/.claude/hooks/package-lock.json +0 -556
  128. package/.claude/hooks/package.json +0 -16
  129. package/.claude/hooks/post-tool-use-tracker.ps1 +0 -174
  130. package/.claude/hooks/post-tool-use-tracker.sh +0 -183
  131. package/.claude/hooks/security-policy-check.sh +0 -247
  132. package/.claude/hooks/skill-activation-prompt.ps1 +0 -10
  133. package/.claude/hooks/skill-activation-prompt.sh +0 -10
  134. package/.claude/hooks/skill-activation-prompt.ts +0 -141
  135. package/.claude/hooks/stop-build-check-enhanced.sh +0 -130
  136. package/.claude/hooks/terraform-validator.sh +0 -53
  137. package/.claude/hooks/test-input.json +0 -7
  138. package/.claude/hooks/test-skill-activation.ts +0 -427
  139. package/.claude/hooks/trigger-build-resolver.sh +0 -79
  140. package/.claude/hooks/tsc-check.sh +0 -173
  141. package/.claude/hooks/tsconfig.json +0 -19
  142. package/.claude/settings.json +0 -59
  143. package/.claude/settings.local.json +0 -67
  144. package/.claude/skills/README.md +0 -507
  145. package/.claude/skills/api-engineering/SKILL.md +0 -63
  146. package/.claude/skills/api-engineering/resources/api-versioning.md +0 -88
  147. package/.claude/skills/api-engineering/resources/graphql-patterns.md +0 -106
  148. package/.claude/skills/api-engineering/resources/rate-limiting.md +0 -118
  149. package/.claude/skills/api-engineering/resources/rest-api-design.md +0 -105
  150. package/.claude/skills/backend-dev-guidelines/SKILL.md +0 -306
  151. package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +0 -451
  152. package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +0 -307
  153. package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +0 -638
  154. package/.claude/skills/backend-dev-guidelines/resources/configuration.md +0 -275
  155. package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +0 -224
  156. package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +0 -213
  157. package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +0 -756
  158. package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +0 -336
  159. package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +0 -789
  160. package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +0 -235
  161. package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +0 -754
  162. package/.claude/skills/budget-and-cost-management/SKILL.md +0 -850
  163. package/.claude/skills/build-engineering/SKILL.md +0 -431
  164. package/.claude/skills/build-engineering/resources/artifact-repositories.md +0 -72
  165. package/.claude/skills/build-engineering/resources/build-caching.md +0 -96
  166. package/.claude/skills/build-engineering/resources/build-pipelines.md +0 -105
  167. package/.claude/skills/build-engineering/resources/build-security.md +0 -95
  168. package/.claude/skills/build-engineering/resources/build-systems.md +0 -389
  169. package/.claude/skills/build-engineering/resources/compilation-optimization.md +0 -201
  170. package/.claude/skills/build-engineering/resources/dependency-management.md +0 -73
  171. package/.claude/skills/build-engineering/resources/monorepo-builds.md +0 -110
  172. package/.claude/skills/build-engineering/resources/performance-optimization.md +0 -113
  173. package/.claude/skills/build-engineering/resources/reproducible-builds.md +0 -82
  174. package/.claude/skills/cloud-engineering/SKILL.md +0 -675
  175. package/.claude/skills/cloud-engineering/resources/aws-patterns.md +0 -742
  176. package/.claude/skills/cloud-engineering/resources/azure-patterns.md +0 -714
  177. package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +0 -987
  178. package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +0 -757
  179. package/.claude/skills/cloud-engineering/resources/cloud-networking.md +0 -1058
  180. package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +0 -1530
  181. package/.claude/skills/cloud-engineering/resources/cloud-security.md +0 -990
  182. package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +0 -758
  183. package/.claude/skills/cloud-engineering/resources/migration-strategies.md +0 -820
  184. package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +0 -670
  185. package/.claude/skills/cloud-engineering/resources/oci-patterns.md +0 -1198
  186. package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +0 -795
  187. package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +0 -966
  188. package/.claude/skills/cybersecurity/SKILL.md +0 -409
  189. package/.claude/skills/cybersecurity/resources/security-architecture.md +0 -266
  190. package/.claude/skills/database-engineering/SKILL.md +0 -61
  191. package/.claude/skills/database-engineering/resources/backup-and-recovery.md +0 -72
  192. package/.claude/skills/database-engineering/resources/database-replication.md +0 -63
  193. package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +0 -70
  194. package/.claude/skills/database-engineering/resources/query-optimization.md +0 -68
  195. package/.claude/skills/devsecops/SKILL.md +0 -374
  196. package/.claude/skills/devsecops/resources/ci-cd-security.md +0 -204
  197. package/.claude/skills/devsecops/resources/compliance-automation.md +0 -530
  198. package/.claude/skills/devsecops/resources/compliance-frameworks.md +0 -2322
  199. package/.claude/skills/devsecops/resources/container-security.md +0 -915
  200. package/.claude/skills/devsecops/resources/cspm-integration.md +0 -1440
  201. package/.claude/skills/devsecops/resources/policy-enforcement.md +0 -619
  202. package/.claude/skills/devsecops/resources/secrets-management.md +0 -755
  203. package/.claude/skills/devsecops/resources/security-monitoring.md +0 -146
  204. package/.claude/skills/devsecops/resources/security-scanning.md +0 -887
  205. package/.claude/skills/devsecops/resources/security-testing.md +0 -203
  206. package/.claude/skills/devsecops/resources/supply-chain-security.md +0 -518
  207. package/.claude/skills/devsecops/resources/vulnerability-management.md +0 -481
  208. package/.claude/skills/devsecops/resources/zero-trust-architecture.md +0 -177
  209. package/.claude/skills/documentation-as-code/SKILL.md +0 -323
  210. package/.claude/skills/documentation-as-code/resources/api-documentation.md +0 -90
  211. package/.claude/skills/documentation-as-code/resources/changelog-management.md +0 -79
  212. package/.claude/skills/documentation-as-code/resources/diagram-generation.md +0 -44
  213. package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +0 -99
  214. package/.claude/skills/documentation-as-code/resources/documentation-automation.md +0 -68
  215. package/.claude/skills/documentation-as-code/resources/documentation-sites.md +0 -79
  216. package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +0 -162
  217. package/.claude/skills/documentation-as-code/resources/openapi-specification.md +0 -77
  218. package/.claude/skills/documentation-as-code/resources/readme-engineering.md +0 -60
  219. package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +0 -202
  220. package/.claude/skills/engineering-management/SKILL.md +0 -356
  221. package/.claude/skills/engineering-management/resources/career-ladders.md +0 -609
  222. package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +0 -555
  223. package/.claude/skills/engineering-management/resources/one-on-one-guides.md +0 -609
  224. package/.claude/skills/engineering-management/resources/resource-planning.md +0 -557
  225. package/.claude/skills/engineering-management/resources/team-organization-patterns.md +0 -491
  226. package/.claude/skills/engineering-management/resources/technical-interviews.md +0 -474
  227. package/.claude/skills/engineering-operations-management/SKILL.md +0 -817
  228. package/.claude/skills/error-tracking/SKILL.md +0 -379
  229. package/.claude/skills/frontend-design/SKILL.md +0 -42
  230. package/.claude/skills/frontend-dev-guidelines/SKILL.md +0 -403
  231. package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +0 -331
  232. package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +0 -872
  233. package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +0 -502
  234. package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +0 -767
  235. package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +0 -502
  236. package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +0 -501
  237. package/.claude/skills/frontend-dev-guidelines/resources/performance.md +0 -406
  238. package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +0 -364
  239. package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +0 -428
  240. package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +0 -418
  241. package/.claude/skills/general-it-engineering/SKILL.md +0 -393
  242. package/.claude/skills/general-it-engineering/resources/asset-management.md +0 -712
  243. package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +0 -817
  244. package/.claude/skills/general-it-engineering/resources/business-continuity.md +0 -786
  245. package/.claude/skills/general-it-engineering/resources/change-management.md +0 -715
  246. package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +0 -729
  247. package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +0 -738
  248. package/.claude/skills/general-it-engineering/resources/incident-service-management.md +0 -834
  249. package/.claude/skills/general-it-engineering/resources/it-governance.md +0 -753
  250. package/.claude/skills/general-it-engineering/resources/itil-framework.md +0 -503
  251. package/.claude/skills/general-it-engineering/resources/service-management.md +0 -669
  252. package/.claude/skills/infrastructure-architecture/SKILL.md +0 -328
  253. package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +0 -505
  254. package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +0 -528
  255. package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +0 -453
  256. package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +0 -773
  257. package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +0 -499
  258. package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +0 -501
  259. package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +0 -535
  260. package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +0 -512
  261. package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +0 -608
  262. package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +0 -562
  263. package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +0 -538
  264. package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +0 -489
  265. package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +0 -1000
  266. package/.claude/skills/infrastructure-strategy/SKILL.md +0 -924
  267. package/.claude/skills/network-engineering/SKILL.md +0 -385
  268. package/.claude/skills/network-engineering/resources/dns-management.md +0 -738
  269. package/.claude/skills/network-engineering/resources/load-balancing.md +0 -820
  270. package/.claude/skills/network-engineering/resources/network-architecture.md +0 -546
  271. package/.claude/skills/network-engineering/resources/network-security.md +0 -921
  272. package/.claude/skills/network-engineering/resources/network-troubleshooting.md +0 -749
  273. package/.claude/skills/network-engineering/resources/routing-switching.md +0 -373
  274. package/.claude/skills/network-engineering/resources/sdn-networking.md +0 -695
  275. package/.claude/skills/network-engineering/resources/service-mesh-networking.md +0 -777
  276. package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +0 -444
  277. package/.claude/skills/network-engineering/resources/vpn-connectivity.md +0 -672
  278. package/.claude/skills/node-development/SKILL.md +0 -317
  279. package/.claude/skills/observability-engineering/SKILL.md +0 -101
  280. package/.claude/skills/observability-engineering/resources/apm-tools.md +0 -97
  281. package/.claude/skills/observability-engineering/resources/correlation-strategies.md +0 -87
  282. package/.claude/skills/observability-engineering/resources/distributed-tracing.md +0 -98
  283. package/.claude/skills/observability-engineering/resources/logs-aggregation.md +0 -118
  284. package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +0 -141
  285. package/.claude/skills/observability-engineering/resources/opentelemetry.md +0 -110
  286. package/.claude/skills/platform-engineering/SKILL.md +0 -555
  287. package/.claude/skills/platform-engineering/resources/architecture-overview.md +0 -600
  288. package/.claude/skills/platform-engineering/resources/container-orchestration.md +0 -916
  289. package/.claude/skills/platform-engineering/resources/cost-optimization.md +0 -634
  290. package/.claude/skills/platform-engineering/resources/developer-platforms.md +0 -670
  291. package/.claude/skills/platform-engineering/resources/gitops-automation.md +0 -650
  292. package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +0 -778
  293. package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +0 -708
  294. package/.claude/skills/platform-engineering/resources/multi-tenancy.md +0 -602
  295. package/.claude/skills/platform-engineering/resources/platform-security.md +0 -711
  296. package/.claude/skills/platform-engineering/resources/resource-management.md +0 -592
  297. package/.claude/skills/platform-engineering/resources/service-mesh.md +0 -628
  298. package/.claude/skills/release-engineering/SKILL.md +0 -393
  299. package/.claude/skills/release-engineering/resources/artifact-management.md +0 -108
  300. package/.claude/skills/release-engineering/resources/build-optimization.md +0 -84
  301. package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +0 -411
  302. package/.claude/skills/release-engineering/resources/deployment-strategies.md +0 -197
  303. package/.claude/skills/release-engineering/resources/pipeline-security.md +0 -62
  304. package/.claude/skills/release-engineering/resources/progressive-delivery.md +0 -83
  305. package/.claude/skills/release-engineering/resources/release-automation.md +0 -68
  306. package/.claude/skills/release-engineering/resources/release-orchestration.md +0 -77
  307. package/.claude/skills/release-engineering/resources/rollback-strategies.md +0 -66
  308. package/.claude/skills/release-engineering/resources/versioning-strategies.md +0 -59
  309. package/.claude/skills/route-tester/SKILL.md +0 -392
  310. package/.claude/skills/skill-developer/ADVANCED.md +0 -197
  311. package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +0 -306
  312. package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +0 -152
  313. package/.claude/skills/skill-developer/SKILL.md +0 -430
  314. package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +0 -315
  315. package/.claude/skills/skill-developer/TRIGGER_TYPES.md +0 -305
  316. package/.claude/skills/skill-developer/TROUBLESHOOTING.md +0 -514
  317. package/.claude/skills/skill-rules.json +0 -2989
  318. package/.claude/skills/sre/SKILL.md +0 -464
  319. package/.claude/skills/sre/resources/alerting-best-practices.md +0 -282
  320. package/.claude/skills/sre/resources/capacity-planning.md +0 -226
  321. package/.claude/skills/sre/resources/chaos-engineering.md +0 -193
  322. package/.claude/skills/sre/resources/disaster-recovery.md +0 -232
  323. package/.claude/skills/sre/resources/incident-management.md +0 -436
  324. package/.claude/skills/sre/resources/observability-stack.md +0 -240
  325. package/.claude/skills/sre/resources/on-call-runbooks.md +0 -167
  326. package/.claude/skills/sre/resources/performance-optimization.md +0 -108
  327. package/.claude/skills/sre/resources/reliability-patterns.md +0 -183
  328. package/.claude/skills/sre/resources/slo-sli-sla.md +0 -464
  329. package/.claude/skills/sre/resources/toil-reduction.md +0 -145
  330. package/.claude/skills/systems-engineering/SKILL.md +0 -648
  331. package/.claude/skills/systems-engineering/resources/automation-patterns.md +0 -771
  332. package/.claude/skills/systems-engineering/resources/configuration-management.md +0 -998
  333. package/.claude/skills/systems-engineering/resources/linux-administration.md +0 -672
  334. package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +0 -982
  335. package/.claude/skills/systems-engineering/resources/performance-tuning.md +0 -871
  336. package/.claude/skills/systems-engineering/resources/powershell-scripting.md +0 -482
  337. package/.claude/skills/systems-engineering/resources/security-hardening.md +0 -739
  338. package/.claude/skills/systems-engineering/resources/shell-scripting.md +0 -915
  339. package/.claude/skills/systems-engineering/resources/storage-management.md +0 -628
  340. package/.claude/skills/systems-engineering/resources/system-monitoring.md +0 -787
  341. package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +0 -753
  342. package/.claude/skills/systems-engineering/resources/windows-administration.md +0 -738
  343. package/.claude/skills/technical-leadership/SKILL.md +0 -728
  344. package/backend/docs/SECRETS_DOCUMENTATION.md +0 -327
  345. package/frontend/dist/assets/index-BC-NbKXi.css +0 -32
  346. package/frontend/dist/assets/index-DqJXZMHY.js +0 -11266
@@ -0,0 +1,1077 @@
1
+ {
2
+ "common": {
3
+ "pins": {
4
+ "exec": "Выполнить",
5
+ "execDone": "Выполнено",
6
+ "value": "Значение",
7
+ "result": "Результат",
8
+ "condition": "Условие",
9
+ "array": "Массив",
10
+ "element": "Элемент",
11
+ "index": "Индекс",
12
+ "success": "Успех?",
13
+ "error": "Ошибка",
14
+ "true": "True",
15
+ "false": "False"
16
+ },
17
+ "placeholders": {
18
+ "select": "Выбрать...",
19
+ "enterText": "Введите текст...",
20
+ "variableName": "имя_переменной"
21
+ }
22
+ },
23
+
24
+ "flow:branch": {
25
+ "label": "Ветвление",
26
+ "description": "Условное ветвление на основе boolean значения",
27
+ "pins": {
28
+ "exec": "Выполнить",
29
+ "condition": "Условие",
30
+ "exec_true": "True",
31
+ "exec_true_desc": "Выполняется если условие true",
32
+ "exec_false": "False",
33
+ "exec_false_desc": "Выполняется если условие false"
34
+ }
35
+ },
36
+
37
+ "flow:sequence": {
38
+ "label": "Последовательность",
39
+ "description": "Последовательно выполняет несколько веток"
40
+ },
41
+
42
+ "flow:switch": {
43
+ "label": "Переключатель",
44
+ "description": "Выбирает ветку выполнения на основе значения",
45
+ "pins": {
46
+ "value_desc": "Значение для сравнения"
47
+ }
48
+ },
49
+
50
+ "flow:for_each": {
51
+ "label": "🔁 Перебор массива (цикл)",
52
+ "description": "Выполняет \"Тело цикла\" для каждого элемента в \"Массиве\"",
53
+ "pins": {
54
+ "loop_body": "Тело цикла",
55
+ "element": "Элемент",
56
+ "index": "Индекс",
57
+ "completed": "Завершено"
58
+ }
59
+ },
60
+
61
+ "flow:while": {
62
+ "label": "🔁 Цикл While",
63
+ "description": "Выполняет \"Тело цикла\" пока условие истинно",
64
+ "pins": {
65
+ "condition": "Условие",
66
+ "loop_body": "Тело цикла",
67
+ "iteration": "Итерация",
68
+ "completed": "Завершено"
69
+ }
70
+ },
71
+
72
+ "flow:break": {
73
+ "label": "🛑 Выйти из цикла",
74
+ "description": "Немедленно прерывает выполнение цикла (For Each Loop) и передает управление на его выход Completed"
75
+ },
76
+
77
+ "flow:delay": {
78
+ "label": "⏱️ Задержка",
79
+ "description": "Ожидает указанное количество миллисекунд, затем продолжает выполнение",
80
+ "pins": {
81
+ "delay": "Задержка (мс)",
82
+ "next": "Далее"
83
+ }
84
+ },
85
+
86
+ "data:cast": {
87
+ "label": "Преобразовать тип",
88
+ "description": "Преобразует значение в выбранный тип",
89
+ "pins": {
90
+ "value": "Значение",
91
+ "result": "Результат"
92
+ }
93
+ },
94
+
95
+ "data:type_check": {
96
+ "label": "Проверить тип",
97
+ "description": "Проверяет соответствие значения типу",
98
+ "pins": {
99
+ "value_desc": "Значение для проверки",
100
+ "result_desc": "True если тип совпадает"
101
+ }
102
+ },
103
+
104
+ "data:get_variable": {
105
+ "label": "Получить переменную",
106
+ "description": "Получить значение переменной",
107
+ "pins": {
108
+ "variableName": "Имя переменной",
109
+ "value": "Значение",
110
+ "value_desc": "Значение переменной"
111
+ }
112
+ },
113
+
114
+ "data:get_argument": {
115
+ "label": "Получить аргумент",
116
+ "description": "Получает значение аргумента команды",
117
+ "pins": {
118
+ "argumentName": "Имя аргумента",
119
+ "value": "Значение",
120
+ "value_desc": "Значение аргумента"
121
+ }
122
+ },
123
+
124
+ "data:make_object": {
125
+ "label": "Создать объект",
126
+ "description": "Создаёт объект из JSON"
127
+ },
128
+
129
+ "data:number_literal": {
130
+ "label": "🔢 Число",
131
+ "description": "Простое числовое значение."
132
+ },
133
+
134
+ "data:boolean_literal": {
135
+ "label": "Boolean",
136
+ "description": "Булево значение (true/false)",
137
+ "pins": {
138
+ "value": "Значение",
139
+ "value_desc": "Булево значение"
140
+ }
141
+ },
142
+
143
+ "data:get_entity_field": {
144
+ "label": "Поле сущности",
145
+ "description": "Получает поля из объекта сущности",
146
+ "pins": {
147
+ "entity": "Сущность",
148
+ "entity_desc": "Объект сущности"
149
+ }
150
+ },
151
+
152
+ "data:get_server_players": {
153
+ "label": "Игроки сервера",
154
+ "description": "Список всех игроков на сервере",
155
+ "pins": {
156
+ "players": "Игроки",
157
+ "players_desc": "Массив имен игроков"
158
+ }
159
+ },
160
+
161
+ "data:get_nearby_entities": {
162
+ "label": "Ближайшие сущности",
163
+ "description": "Существа в радиусе от бота",
164
+ "pins": {
165
+ "radius": "Радиус",
166
+ "radius_desc": "Радиус поиска",
167
+ "entities": "Существа",
168
+ "entities_desc": "Массив существ"
169
+ }
170
+ },
171
+
172
+ "data:get_nearby_players": {
173
+ "label": "Ближайшие игроки",
174
+ "description": "Игроки рядом с ботом",
175
+ "pins": {
176
+ "radius": "Радиус",
177
+ "radius_desc": "Радиус поиска",
178
+ "players": "Игроки",
179
+ "players_desc": "Массив игроков с расстоянием"
180
+ }
181
+ },
182
+
183
+ "data:entity_info": {
184
+ "label": "Инфо о сущности",
185
+ "description": "Информация о существе",
186
+ "pins": {
187
+ "entity": "Существо",
188
+ "entity_desc": "Объект существа"
189
+ }
190
+ },
191
+
192
+ "data:get_user_field": {
193
+ "label": "Поле пользователя",
194
+ "description": "Получает поле пользователя бота"
195
+ },
196
+
197
+ "data:length": {
198
+ "label": "Длина",
199
+ "description": "Возвращает длину массива или строки",
200
+ "pins": {
201
+ "data": "Массив или Строка",
202
+ "data_desc": "Данные для измерения",
203
+ "length": "Длина",
204
+ "length_desc": "Количество элементов/символов"
205
+ }
206
+ },
207
+
208
+ "logic:compare": {
209
+ "label": "Сравнение",
210
+ "description": "Сравнение двух значений"
211
+ },
212
+
213
+ "logic:operation": {
214
+ "label": "Логическая операция",
215
+ "description": "Логические операции",
216
+ "pins": {
217
+ "result": "Результат",
218
+ "result_desc": "Результат логической операции"
219
+ }
220
+ },
221
+
222
+ "logic:not": {
223
+ "label": "! НЕ",
224
+ "description": "Инвертирует boolean значение (NOT)",
225
+ "pins": {
226
+ "value": "Значение",
227
+ "result": "Результат",
228
+ "result_desc": "Инвертированное значение"
229
+ }
230
+ },
231
+
232
+ "math:operation": {
233
+ "label": "Математическая операция",
234
+ "description": "Математические операции и сравнения",
235
+ "pins": {
236
+ "a_desc": "Первое число",
237
+ "b_desc": "Второе число",
238
+ "result_desc": "Результат операции"
239
+ }
240
+ },
241
+
242
+ "math:random_number": {
243
+ "label": "🎲 Случайное число",
244
+ "description": "Генерирует случайное число в заданном диапазоне",
245
+ "pins": {
246
+ "min": "Мин",
247
+ "max": "Макс",
248
+ "result": "Результат"
249
+ }
250
+ },
251
+
252
+ "string:concat": {
253
+ "label": "Объединить строки",
254
+ "description": "Объединяет несколько строк в одну",
255
+ "pins": {
256
+ "string_n": "Строка {{n}}"
257
+ }
258
+ },
259
+
260
+ "data:string_literal": {
261
+ "label": "Строка",
262
+ "description": "Строка с поддержкой переменных {name}",
263
+ "pins": {
264
+ "text": "Текст",
265
+ "value_desc": "Итоговая строка"
266
+ },
267
+ "placeholder": "Введите текст с {переменными}..."
268
+ },
269
+
270
+ "string:contains": {
271
+ "label": "Содержит",
272
+ "description": "Проверяет содержит ли строка подстроку"
273
+ },
274
+
275
+ "string:matches": {
276
+ "label": "Соответствует",
277
+ "description": "Проверяет соответствие строки регулярному выражению"
278
+ },
279
+
280
+ "string:starts_with": {
281
+ "label": "Начинается с",
282
+ "description": "Проверяет начинается ли строка с подстроки"
283
+ },
284
+
285
+ "string:ends_with": {
286
+ "label": "Заканчивается на",
287
+ "description": "Проверяет заканчивается ли строка подстрокой"
288
+ },
289
+
290
+ "string:length": {
291
+ "label": "Длина строки",
292
+ "description": "Возвращает длину строки"
293
+ },
294
+
295
+ "string:equals": {
296
+ "label": "Равны",
297
+ "description": "Проверяет равенство двух строк"
298
+ },
299
+
300
+ "string:split": {
301
+ "label": "Разделить",
302
+ "description": "Разделяет строку по разделителю"
303
+ },
304
+
305
+ "string:to_upper": {
306
+ "label": "В верхний регистр",
307
+ "description": "Преобразует строку в верхний регистр"
308
+ },
309
+
310
+ "string:to_lower": {
311
+ "label": "В нижний регистр",
312
+ "description": "Преобразует строку в нижний регистр"
313
+ },
314
+
315
+ "data:array_literal": {
316
+ "label": "Массив",
317
+ "description": "Создает массив из элементов",
318
+ "pins": {
319
+ "array_desc": "Созданный массив"
320
+ }
321
+ },
322
+
323
+ "array:get_random_element": {
324
+ "label": "Случайный элемент",
325
+ "description": "Возвращает случайный элемент из массива и его индекс",
326
+ "pins": {
327
+ "array": "Массив",
328
+ "array_desc": "Входной массив",
329
+ "element": "Элемент",
330
+ "element_desc": "Случайный элемент",
331
+ "index": "Индекс",
332
+ "index_desc": "Индекс элемента"
333
+ }
334
+ },
335
+
336
+ "array:contains": {
337
+ "label": "Содержит элемент",
338
+ "description": "Проверяет, содержит ли массив указанный элемент",
339
+ "pins": {
340
+ "array": "Массив",
341
+ "array_desc": "Входной массив",
342
+ "element": "Элемент",
343
+ "element_desc": "Элемент для поиска",
344
+ "result": "Найден",
345
+ "result_desc": "True если элемент найден",
346
+ "index": "Индекс",
347
+ "index_desc": "Индекс элемента (-1 если не найден)"
348
+ }
349
+ },
350
+
351
+ "array:get_by_index": {
352
+ "label": "Получить по индексу",
353
+ "description": "Получает элемент массива по его индексу",
354
+ "pins": {
355
+ "array": "Массив",
356
+ "array_desc": "Входной массив",
357
+ "index": "Индекс",
358
+ "index_desc": "Индекс элемента",
359
+ "element": "Элемент",
360
+ "element_desc": "Элемент по индексу"
361
+ }
362
+ },
363
+
364
+ "array:get_next": {
365
+ "label": "Следующий элемент",
366
+ "description": "Получает следующий элемент массива",
367
+ "pins": {
368
+ "array": "Массив",
369
+ "array_desc": "Входной массив",
370
+ "current_index": "Текущий индекс",
371
+ "current_index_desc": "Текущий индекс",
372
+ "next_element": "Следующий элемент",
373
+ "next_element_desc": "Следующий элемент",
374
+ "next_index": "Следующий индекс",
375
+ "next_index_desc": "Следующий индекс",
376
+ "has_next": "Есть следующий?",
377
+ "has_next_desc": "True если следующий элемент существует"
378
+ }
379
+ },
380
+
381
+ "array:add_element": {
382
+ "label": "Добавить элемент",
383
+ "description": "Добавляет элемент в конец массива",
384
+ "pins": {
385
+ "array": "Массив",
386
+ "array_desc": "Входной массив",
387
+ "element": "Элемент",
388
+ "element_desc": "Элемент для добавления",
389
+ "result": "Новый массив",
390
+ "result_desc": "Массив с добавленным элементом"
391
+ }
392
+ },
393
+
394
+ "array:remove_by_index": {
395
+ "label": "Удалить по индексу",
396
+ "description": "Удаляет элемент из массива по его индексу",
397
+ "pins": {
398
+ "array": "Массив",
399
+ "array_desc": "Входной массив",
400
+ "index": "Индекс",
401
+ "index_desc": "Индекс элемента для удаления",
402
+ "result": "Новый массив",
403
+ "result_desc": "Массив без элемента"
404
+ }
405
+ },
406
+
407
+ "array:find_index": {
408
+ "label": "Найти индекс",
409
+ "description": "Находит индекс элемента в массиве",
410
+ "pins": {
411
+ "array": "Массив",
412
+ "array_desc": "Входной массив",
413
+ "element": "Элемент",
414
+ "element_desc": "Элемент для поиска",
415
+ "index": "Индекс",
416
+ "index_desc": "Индекс элемента (-1 если не найден)"
417
+ }
418
+ },
419
+
420
+ "array:join": {
421
+ "label": "Объединить в строку",
422
+ "description": "Объединяет массив в строку с разделителем",
423
+ "pins": {
424
+ "array": "Массив",
425
+ "array_desc": "Массив для объединения",
426
+ "separator": "Разделитель",
427
+ "separator_desc": "Разделитель между элементами",
428
+ "result": "Результат",
429
+ "result_desc": "Строка из элементов массива"
430
+ }
431
+ },
432
+
433
+ "object:create": {
434
+ "label": "Создать объект",
435
+ "description": "Создает объект из пар ключ-значение",
436
+ "pins": {
437
+ "key_n": "Ключ {{n}}",
438
+ "value_n": "Значение {{n}}",
439
+ "object_desc": "Созданный объект"
440
+ }
441
+ },
442
+
443
+ "object:get": {
444
+ "label": "Получить свойство",
445
+ "description": "Получает значение свойства объекта"
446
+ },
447
+
448
+ "object:set": {
449
+ "label": "Установить свойство",
450
+ "description": "Устанавливает значение свойства объекта"
451
+ },
452
+
453
+ "object:delete": {
454
+ "label": "Удалить свойство",
455
+ "description": "Удаляет свойство из объекта"
456
+ },
457
+
458
+ "object:has_key": {
459
+ "label": "Содержит ключ",
460
+ "description": "Проверяет наличие ключа в объекте"
461
+ },
462
+
463
+ "action:send_message": {
464
+ "label": "🗣️ Отправить сообщение",
465
+ "description": "Отправляет сообщение в чат. Поддерживает переменные в формате {varName}",
466
+ "pins": {
467
+ "chat_type": "Тип чата",
468
+ "message": "Сообщение",
469
+ "recipient": "Адресат",
470
+ "done": "Выполнено"
471
+ },
472
+ "placeholders": {
473
+ "message": "Текст сообщения с {переменными}",
474
+ "recipient": "Имя игрока"
475
+ }
476
+ },
477
+
478
+ "action:http_request": {
479
+ "label": "HTTP Запрос",
480
+ "description": "Выполняет HTTP запрос. Поддерживает переменные: {varName}",
481
+ "pins": {
482
+ "url_desc": "URL для запроса",
483
+ "method_desc": "HTTP метод",
484
+ "queryParams_desc": "Параметры URL (?key=value)",
485
+ "headers_desc": "HTTP заголовки",
486
+ "body_desc": "Тело запроса",
487
+ "exec_desc": "Выполняется после запроса",
488
+ "response_desc": "Ответ сервера",
489
+ "error_desc": "Ошибка если есть"
490
+ }
491
+ },
492
+
493
+ "action:send_log": {
494
+ "label": "📝 Лог",
495
+ "description": "Отправляет сообщение в логи бота"
496
+ },
497
+
498
+ "action:send_websocket_response": {
499
+ "label": "WebSocket ответ",
500
+ "description": "Отправляет ответ клиенту через WebSocket API",
501
+ "pins": {
502
+ "data": "Данные",
503
+ "data_desc": "Данные для отправки"
504
+ }
505
+ },
506
+
507
+ "action:bot_look_at": {
508
+ "label": "👀 Смотреть на",
509
+ "description": "Поворачивает голову бота на цель",
510
+ "pins": {
511
+ "target": "Цель",
512
+ "target_desc": "Позиция или сущность",
513
+ "offsetY": "Смещение Y",
514
+ "offsetY_desc": "Корректировка по Y"
515
+ }
516
+ },
517
+
518
+ "action:bot_set_variable": {
519
+ "label": "Установить переменную",
520
+ "description": "Записывает значение в переменную",
521
+ "pins": {
522
+ "name": "Имя",
523
+ "name_desc": "Имя переменной",
524
+ "value": "Значение",
525
+ "persist": "Хранить в БД?",
526
+ "execDone": "Выполнено"
527
+ }
528
+ },
529
+
530
+ "action:create_command": {
531
+ "label": "Создать команду",
532
+ "description": "Создаёт новую команду"
533
+ },
534
+
535
+ "action:update_command": {
536
+ "label": "Обновить команду",
537
+ "description": "Обновляет существующую команду"
538
+ },
539
+
540
+ "action:delete_command": {
541
+ "label": "Удалить команду",
542
+ "description": "Удаляет команду"
543
+ },
544
+
545
+ "time:datetime_literal": {
546
+ "label": "Дата/Время",
547
+ "description": "Создаёт значение даты/времени"
548
+ },
549
+
550
+ "time:now": {
551
+ "label": "Сейчас",
552
+ "description": "Возвращает текущую дату и время",
553
+ "pins": {
554
+ "now": "Сейчас"
555
+ }
556
+ },
557
+
558
+ "time:format": {
559
+ "label": "Форматировать время",
560
+ "description": "Форматирует дату/время в строку"
561
+ },
562
+
563
+ "time:add": {
564
+ "label": "Добавить время",
565
+ "description": "Добавляет интервал к дате/времени"
566
+ },
567
+
568
+ "time:diff": {
569
+ "label": "Разница времени",
570
+ "description": "Вычисляет разницу между датами"
571
+ },
572
+
573
+ "time:compare": {
574
+ "label": "Сравнить время",
575
+ "description": "Сравнивает две даты/времени"
576
+ },
577
+
578
+ "user:check_blacklist": {
579
+ "label": "В чёрном списке?",
580
+ "description": "Проверяет, находится ли пользователь в чёрном списке",
581
+ "pins": {
582
+ "user": "Пользователь",
583
+ "user_desc": "Пользователь для проверки",
584
+ "is_blacklisted": "В ЧС",
585
+ "is_blacklisted_desc": "True если в чёрном списке"
586
+ }
587
+ },
588
+
589
+ "user:set_blacklist": {
590
+ "label": "Чёрный список",
591
+ "description": "Управляет чёрным списком пользователя",
592
+ "pins": {
593
+ "user": "Пользователь",
594
+ "user_desc": "Пользователь",
595
+ "add": "Добавить",
596
+ "add_desc": "True = добавить в ЧС"
597
+ }
598
+ },
599
+
600
+ "user:get_groups": {
601
+ "label": "Группы пользователя",
602
+ "description": "Возвращает группы пользователя",
603
+ "pins": {
604
+ "user": "Пользователь",
605
+ "user_desc": "Пользователь",
606
+ "groups": "Группы",
607
+ "groups_desc": "Массив групп"
608
+ }
609
+ },
610
+
611
+ "user:get_permissions": {
612
+ "label": "Права пользователя",
613
+ "description": "Возвращает права пользователя",
614
+ "pins": {
615
+ "user": "Пользователь",
616
+ "user_desc": "Пользователь",
617
+ "permissions": "Права",
618
+ "permissions_desc": "Массив прав"
619
+ }
620
+ },
621
+
622
+ "type:to_string": {
623
+ "label": "В строку",
624
+ "description": "Преобразует значение в строку"
625
+ },
626
+
627
+ "bot:get_position": {
628
+ "label": "Позиция бота",
629
+ "description": "Возвращает текущую позицию бота в мире",
630
+ "pins": {
631
+ "position": "Позиция",
632
+ "position_desc": "Объект с координатами {x, y, z}"
633
+ }
634
+ },
635
+
636
+ "debug:log": {
637
+ "label": "Отладка",
638
+ "description": "Выводит значение в консоль сервера",
639
+ "pins": {
640
+ "exec": "Выполнить",
641
+ "value": "Значение",
642
+ "value_desc": "Значение для вывода",
643
+ "execDone": "Выполнено"
644
+ }
645
+ },
646
+
647
+ "event:command": {
648
+ "label": "▶️ При выполнении команды",
649
+ "description": "Стартовая точка для графа команды",
650
+ "pins": {
651
+ "command_name": "Имя команды",
652
+ "user": "Пользователь",
653
+ "args": "Аргументы",
654
+ "chat_type": "Тип чата",
655
+ "success": "Успешно",
656
+ "success_desc": "Возвращает true, если команда не попала на ошибку"
657
+ }
658
+ },
659
+
660
+ "event:chat": {
661
+ "label": "💬 Сообщение в чате",
662
+ "description": "Срабатывает, когда в чат приходит сообщение",
663
+ "pins": {
664
+ "username": "Игрок",
665
+ "message": "Сообщение",
666
+ "chatType": "Тип чата"
667
+ }
668
+ },
669
+
670
+ "event:raw_message": {
671
+ "label": "📨 Сырое сообщение",
672
+ "description": "Срабатывает при получении любого сообщения"
673
+ },
674
+
675
+ "event:player_joined": {
676
+ "label": "👋 Игрок зашёл",
677
+ "description": "Срабатывает когда игрок заходит на сервер"
678
+ },
679
+
680
+ "event:player_left": {
681
+ "label": "👋 Игрок вышел",
682
+ "description": "Срабатывает когда игрок выходит с сервера"
683
+ },
684
+
685
+ "event:entity_spawn": {
686
+ "label": "🐾 Сущность появилась",
687
+ "description": "Срабатывает при появлении сущности"
688
+ },
689
+
690
+ "event:entity_moved": {
691
+ "label": "🏃 Сущность двигается",
692
+ "description": "Срабатывает при движении сущности"
693
+ },
694
+
695
+ "event:entity_gone": {
696
+ "label": "💨 Сущность исчезла",
697
+ "description": "Срабатывает когда сущность пропадает"
698
+ },
699
+
700
+ "event:bot_died": {
701
+ "label": "💀 Бот умер",
702
+ "description": "Срабатывает когда бот умирает"
703
+ },
704
+
705
+ "event:bot_startup": {
706
+ "label": "🚀 Запуск бота",
707
+ "description": "Срабатывает при запуске бота"
708
+ },
709
+
710
+ "event:health": {
711
+ "label": "❤️ Здоровье",
712
+ "description": "Срабатывает при изменении здоровья"
713
+ },
714
+
715
+ "event:websocket_call": {
716
+ "label": "🔌 WebSocket вызов",
717
+ "description": "Срабатывает при WebSocket вызове"
718
+ },
719
+
720
+ "inventory:get_all": {
721
+ "label": "📦 Весь инвентарь",
722
+ "description": "Возвращает весь инвентарь бота как массив предметов",
723
+ "pins": {
724
+ "items": "Предметы",
725
+ "items_desc": "Массив предметов в инвентаре",
726
+ "count": "Кол-во слотов",
727
+ "count_desc": "Количество занятых слотов"
728
+ }
729
+ },
730
+
731
+ "inventory:find_item": {
732
+ "label": "🔍 Найти предмет",
733
+ "description": "Находит предмет в инвентаре",
734
+ "pins": {
735
+ "itemName": "Имя предмета",
736
+ "itemName_desc": "Имя предмета (minecraft id без префикса)",
737
+ "item": "Предмет",
738
+ "item_desc": "Объект предмета {name, count, slot, metadata}",
739
+ "found": "Найден?",
740
+ "found_desc": "true если предмет найден",
741
+ "slot": "Слот",
742
+ "slot_desc": "Номер слота где найден предмет"
743
+ }
744
+ },
745
+
746
+ "inventory:count_item": {
747
+ "label": "🔢 Подсчитать предметы",
748
+ "description": "Подсчитывает количество предметов",
749
+ "pins": {
750
+ "itemName": "Имя предмета",
751
+ "itemName_desc": "Имя предмета для подсчёта",
752
+ "count": "Количество",
753
+ "count_desc": "Общее количество предмета в инвентаре"
754
+ }
755
+ },
756
+
757
+ "inventory:has_item": {
758
+ "label": "❓ Есть предмет?",
759
+ "description": "Проверяет наличие предмета",
760
+ "pins": {
761
+ "itemName": "Имя предмета",
762
+ "itemName_desc": "Имя предмета для проверки",
763
+ "minCount": "Мин. кол-во",
764
+ "minCount_desc": "Минимальное требуемое количество (по умолчанию 1)",
765
+ "hasItem": "Есть?",
766
+ "hasItem_desc": "true если предмет есть в нужном количестве",
767
+ "actualCount": "Фактически",
768
+ "actualCount_desc": "Фактическое количество предмета"
769
+ }
770
+ },
771
+
772
+ "inventory:get_slot": {
773
+ "label": "📍 Получить слот",
774
+ "description": "Получает предмет из слота",
775
+ "pins": {
776
+ "slotNumber": "Номер слота",
777
+ "slotNumber_desc": "Номер слота (0-8 хотбар, 9-35 инвентарь, 36-39 броня, 40 офхенд)",
778
+ "item": "Предмет",
779
+ "item_desc": "Объект предмета или null если слот пуст",
780
+ "isEmpty": "Пусто?",
781
+ "isEmpty_desc": "true если слот пустой"
782
+ }
783
+ },
784
+
785
+ "inventory:get_held_item": {
786
+ "label": "✋ Предмет в руке",
787
+ "description": "Возвращает предмет в руке",
788
+ "pins": {
789
+ "hand": "Рука",
790
+ "hand_desc": "Какую руку проверить",
791
+ "item": "Предмет",
792
+ "item_desc": "Объект предмета или null",
793
+ "name": "Имя",
794
+ "name_desc": "Имя предмета",
795
+ "count": "Количество",
796
+ "count_desc": "Количество в стаке",
797
+ "hasItem": "Есть предмет?",
798
+ "hasItem_desc": "true если в руке есть предмет"
799
+ }
800
+ },
801
+
802
+ "inventory:equip": {
803
+ "label": "🛡️ Экипировать",
804
+ "description": "Экипирует предмет",
805
+ "pins": {
806
+ "itemName": "Предмет",
807
+ "itemName_desc": "Имя предмета для экипировки",
808
+ "destination": "Куда",
809
+ "destination_desc": "Куда экипировать предмет",
810
+ "success": "Успех?",
811
+ "success_desc": "true если предмет успешно экипирован"
812
+ }
813
+ },
814
+
815
+ "inventory:drop": {
816
+ "label": "🗑️ Выбросить",
817
+ "description": "Выбрасывает предмет",
818
+ "pins": {
819
+ "itemName": "Предмет",
820
+ "itemName_desc": "Имя предмета для выброса",
821
+ "count": "Количество",
822
+ "count_desc": "Сколько выбросить (пусто = весь стак)",
823
+ "dropAll": "Выбросить все?",
824
+ "dropAll_desc": "Выбросить все такие предметы из инвентаря",
825
+ "dropped": "Выброшено",
826
+ "dropped_desc": "Сколько предметов выброшено"
827
+ }
828
+ },
829
+
830
+ "inventory:select_slot": {
831
+ "label": "👆 Выбрать слот",
832
+ "description": "Выбирает слот в хотбаре",
833
+ "pins": {
834
+ "slot": "Слот",
835
+ "slot_desc": "Номер слота хотбара (0-8)",
836
+ "item": "Предмет",
837
+ "item_desc": "Предмет в выбранном слоте (или null)"
838
+ }
839
+ },
840
+
841
+ "navigation:go_to": {
842
+ "label": "🚶 Идти к",
843
+ "description": "Перемещает бота к указанным координатам используя pathfinding",
844
+ "pins": {
845
+ "range": "Радиус",
846
+ "range_desc": "На каком расстоянии остановиться (по умолчанию 1 блок)",
847
+ "arrived": "Дошёл",
848
+ "failed": "Не удалось",
849
+ "success_desc": "true если бот дошёл до точки"
850
+ }
851
+ },
852
+
853
+ "navigation:go_to_player": {
854
+ "label": "🚶 Идти к игроку",
855
+ "description": "Перемещает бота к игроку",
856
+ "pins": {
857
+ "playerName": "Имя игрока",
858
+ "playerName_desc": "Никнейм игрока",
859
+ "range": "Радиус",
860
+ "range_desc": "На каком расстоянии остановиться",
861
+ "success": "Успех?",
862
+ "success_desc": "true если бот дошёл до игрока",
863
+ "playerPosition": "Позиция игрока",
864
+ "playerPosition_desc": "Координаты игрока {x, y, z}"
865
+ }
866
+ },
867
+
868
+ "navigation:go_to_entity": {
869
+ "label": "🚶 Идти к сущности",
870
+ "description": "Перемещает бота к сущности",
871
+ "pins": {
872
+ "entity": "Сущность",
873
+ "entity_desc": "Объект сущности (из 'Существа рядом')",
874
+ "range": "Радиус",
875
+ "range_desc": "На каком расстоянии остановиться",
876
+ "success": "Успех?",
877
+ "success_desc": "true если бот дошёл до сущности"
878
+ }
879
+ },
880
+
881
+ "navigation:follow": {
882
+ "label": "🚶 Следовать",
883
+ "description": "Бот следует за целью",
884
+ "pins": {
885
+ "target": "Цель",
886
+ "target_desc": "Никнейм игрока за которым следовать",
887
+ "range": "Дистанция",
888
+ "range_desc": "На каком расстоянии держаться",
889
+ "following": "Следует?",
890
+ "following_desc": "true если начал следовать"
891
+ }
892
+ },
893
+
894
+ "navigation:stop": {
895
+ "label": "🛑 Остановить движение",
896
+ "description": "Останавливает движение бота"
897
+ },
898
+
899
+ "container:open": {
900
+ "label": "📦 Контейнер: открыть",
901
+ "description": "Открывает контейнер (сундук, бочку) по координатам",
902
+ "pins": {
903
+ "x": "X",
904
+ "x_desc": "Координата X контейнера",
905
+ "y": "Y",
906
+ "y_desc": "Координата Y контейнера",
907
+ "z": "Z",
908
+ "z_desc": "Координата Z контейнера",
909
+ "opened": "Открыт",
910
+ "error": "Ошибка",
911
+ "container": "Контейнер",
912
+ "container_desc": "Объект открытого контейнера",
913
+ "success": "Успех?",
914
+ "success_desc": "true если контейнер открыт"
915
+ }
916
+ },
917
+
918
+ "container:close": {
919
+ "label": "📦 Контейнер: закрыть",
920
+ "description": "Закрывает открытый контейнер"
921
+ },
922
+
923
+ "container:get_items": {
924
+ "label": "📦 Предметы контейнера",
925
+ "description": "Получает список предметов из открытого контейнера",
926
+ "pins": {
927
+ "container": "Контейнер",
928
+ "container_desc": "Объект контейнера (если не указан - текущий открытый)",
929
+ "items": "Предметы",
930
+ "items_desc": "Массив предметов в контейнере",
931
+ "count": "Кол-во",
932
+ "count_desc": "Количество занятых слотов"
933
+ }
934
+ },
935
+
936
+ "container:deposit": {
937
+ "label": "📥 Положить в контейнер",
938
+ "description": "Кладёт предмет из инвентаря в открытый контейнер",
939
+ "pins": {
940
+ "itemName": "Предмет",
941
+ "itemName_desc": "Имя предмета для перемещения",
942
+ "count": "Кол-во",
943
+ "count_desc": "Количество (пусто = все)",
944
+ "deposited": "Положено",
945
+ "deposited_desc": "Сколько предметов положено",
946
+ "success": "Успех?",
947
+ "success_desc": "true если хоть что-то положено"
948
+ }
949
+ },
950
+
951
+ "container:withdraw": {
952
+ "label": "📤 Взять из контейнера",
953
+ "description": "Забирает предмет из контейнера в инвентарь",
954
+ "pins": {
955
+ "itemName": "Предмет",
956
+ "itemName_desc": "Имя предмета для забора",
957
+ "count": "Кол-во",
958
+ "count_desc": "Количество (пусто = все)",
959
+ "withdrawn": "Забрано",
960
+ "withdrawn_desc": "Сколько предметов забрано",
961
+ "success": "Успех?",
962
+ "success_desc": "true если хоть что-то забрано"
963
+ }
964
+ },
965
+
966
+ "container:deposit_all": {
967
+ "label": "📥 Положить всё",
968
+ "description": "Кладёт все предметы (или определённого типа) в контейнер",
969
+ "pins": {
970
+ "itemName": "Предмет",
971
+ "itemName_desc": "Имя предмета (пусто = все предметы)",
972
+ "keepOne": "Оставить 1?",
973
+ "keepOne_desc": "Оставить хотя бы 1 предмет в инвентаре",
974
+ "deposited": "Положено",
975
+ "deposited_desc": "Сколько предметов положено"
976
+ }
977
+ },
978
+
979
+ "container:find_item": {
980
+ "label": "🔍 Найти в контейнере",
981
+ "description": "Ищет предмет в открытом контейнере",
982
+ "pins": {
983
+ "itemName": "Предмет",
984
+ "itemName_desc": "Имя искомого предмета",
985
+ "item": "Найден",
986
+ "item_desc": "Найденный предмет или null",
987
+ "slot": "Слот",
988
+ "slot_desc": "Номер слота (-1 если не найден)",
989
+ "totalCount": "Всего",
990
+ "totalCount_desc": "Общее количество в контейнере",
991
+ "found": "Найден?",
992
+ "found_desc": "true если предмет найден"
993
+ }
994
+ },
995
+
996
+ "furnace:open": {
997
+ "label": "🔥 Печка: открыть",
998
+ "description": "Открывает печку (обычную, плавильную, коптильню) по координатам",
999
+ "pins": {
1000
+ "x": "X",
1001
+ "x_desc": "Координата X печки",
1002
+ "y": "Y",
1003
+ "y_desc": "Координата Y печки",
1004
+ "z": "Z",
1005
+ "z_desc": "Координата Z печки",
1006
+ "opened": "Открыта",
1007
+ "error": "Ошибка",
1008
+ "furnace": "Печка",
1009
+ "furnace_desc": "Объект открытой печки",
1010
+ "success": "Успех?",
1011
+ "success_desc": "true если печка открыта"
1012
+ }
1013
+ },
1014
+
1015
+ "furnace:close": {
1016
+ "label": "🔥 Печка: закрыть",
1017
+ "description": "Закрывает печку"
1018
+ },
1019
+
1020
+ "furnace:put_input": {
1021
+ "label": "🔥 Печка: положить ресурс",
1022
+ "description": "Кладёт предмет в слот плавки печки",
1023
+ "pins": {
1024
+ "itemName": "Предмет",
1025
+ "itemName_desc": "Название предмета для плавки",
1026
+ "count": "Кол-во",
1027
+ "count_desc": "Количество (пусто = все)",
1028
+ "success": "Успех?",
1029
+ "success_desc": "true если предмет положен"
1030
+ }
1031
+ },
1032
+
1033
+ "furnace:put_fuel": {
1034
+ "label": "🔥 Печка: положить топливо",
1035
+ "description": "Кладёт топливо в слот топлива печки",
1036
+ "pins": {
1037
+ "itemName": "Топливо",
1038
+ "itemName_desc": "Название топлива (coal, charcoal, etc.)",
1039
+ "count": "Кол-во",
1040
+ "count_desc": "Количество (пусто = все)",
1041
+ "success": "Успех?",
1042
+ "success_desc": "true если топливо положено"
1043
+ }
1044
+ },
1045
+
1046
+ "furnace:take_output": {
1047
+ "label": "🔥 Печка: забрать",
1048
+ "description": "Забирает готовый предмет из слота результата печки",
1049
+ "pins": {
1050
+ "item": "Предмет",
1051
+ "item_desc": "Забранный предмет",
1052
+ "count": "Кол-во",
1053
+ "count_desc": "Количество забранных предметов",
1054
+ "success": "Успех?",
1055
+ "success_desc": "true если предмет забран"
1056
+ }
1057
+ },
1058
+
1059
+ "furnace:get_status": {
1060
+ "label": "🔥 Печка: статус",
1061
+ "description": "Получает текущий статус печки (топливо, прогресс, предметы в слотах)",
1062
+ "pins": {
1063
+ "inputItem": "Ресурс",
1064
+ "inputItem_desc": "Предмет в слоте плавки",
1065
+ "fuelItem": "Топливо",
1066
+ "fuelItem_desc": "Предмет в слоте топлива",
1067
+ "outputItem": "Результат",
1068
+ "outputItem_desc": "Готовый предмет",
1069
+ "fuel": "Топливо%",
1070
+ "fuel_desc": "Оставшееся топливо (0-1)",
1071
+ "progress": "Прогресс",
1072
+ "progress_desc": "Прогресс плавки (0-1)",
1073
+ "isBurning": "Горит?",
1074
+ "isBurning_desc": "true если печка работает"
1075
+ }
1076
+ }
1077
+ }