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.
Files changed (433) hide show
  1. package/.claude/agents/README.md +469 -0
  2. package/.claude/agents/auth-route-debugger.md +118 -0
  3. package/.claude/agents/auth-route-tester.md +93 -0
  4. package/.claude/agents/auto-error-resolver.md +97 -0
  5. package/.claude/agents/build-optimizer.md +236 -0
  6. package/.claude/agents/code-architecture-reviewer.md +83 -0
  7. package/.claude/agents/code-refactor-master.md +94 -0
  8. package/.claude/agents/cost-optimizer.md +134 -0
  9. package/.claude/agents/deployment-orchestrator.md +113 -0
  10. package/.claude/agents/documentation-architect.md +82 -0
  11. package/.claude/agents/frontend-error-fixer.md +77 -0
  12. package/.claude/agents/iac-code-generator.md +71 -0
  13. package/.claude/agents/incident-responder.md +346 -0
  14. package/.claude/agents/infrastructure-architect.md +31 -0
  15. package/.claude/agents/kubernetes-specialist.md +56 -0
  16. package/.claude/agents/migration-planner.md +181 -0
  17. package/.claude/agents/network-architect.md +196 -0
  18. package/.claude/agents/plan-reviewer.md +52 -0
  19. package/.claude/agents/refactor-planner.md +63 -0
  20. package/.claude/agents/security-scanner.md +102 -0
  21. package/.claude/agents/web-research-specialist.md +78 -0
  22. package/.claude/commands/cost-analysis.md +315 -0
  23. package/.claude/commands/dev-docs-update.md +55 -0
  24. package/.claude/commands/dev-docs.md +51 -0
  25. package/.claude/commands/incident-debug.md +247 -0
  26. package/.claude/commands/infra-plan.md +81 -0
  27. package/.claude/commands/migration-plan.md +478 -0
  28. package/.claude/commands/route-research-for-testing.md +37 -0
  29. package/.claude/commands/security-review.md +66 -0
  30. package/.claude/hooks/CONFIG.md +448 -0
  31. package/.claude/hooks/README.md +163 -0
  32. package/.claude/hooks/SKILL_ACTIVATION_COMPLETE.md +226 -0
  33. package/.claude/hooks/WINDOWS_HOOKS_README.md +151 -0
  34. package/.claude/hooks/add-skill-activation-banners.ts +132 -0
  35. package/.claude/hooks/comprehensive-skill-test.ts +1315 -0
  36. package/.claude/hooks/error-handling-reminder.sh +12 -0
  37. package/.claude/hooks/error-handling-reminder.ts +222 -0
  38. package/.claude/hooks/k8s-manifest-validator.sh +56 -0
  39. package/.claude/hooks/package-lock.json +556 -0
  40. package/.claude/hooks/package.json +16 -0
  41. package/.claude/hooks/post-tool-use-tracker.ps1 +174 -0
  42. package/.claude/hooks/post-tool-use-tracker.sh +183 -0
  43. package/.claude/hooks/security-policy-check.sh +247 -0
  44. package/.claude/hooks/skill-activation-prompt.ps1 +10 -0
  45. package/.claude/hooks/skill-activation-prompt.sh +10 -0
  46. package/.claude/hooks/skill-activation-prompt.ts +141 -0
  47. package/.claude/hooks/stop-build-check-enhanced.sh +130 -0
  48. package/.claude/hooks/terraform-validator.sh +53 -0
  49. package/.claude/hooks/test-input.json +7 -0
  50. package/.claude/hooks/test-skill-activation.ts +427 -0
  51. package/.claude/hooks/trigger-build-resolver.sh +79 -0
  52. package/.claude/hooks/tsc-check.sh +173 -0
  53. package/.claude/hooks/tsconfig.json +19 -0
  54. package/.claude/settings.json +55 -0
  55. package/.claude/settings.local.json +27 -14
  56. package/.claude/skills/README.md +507 -0
  57. package/.claude/skills/api-engineering/SKILL.md +63 -0
  58. package/.claude/skills/api-engineering/resources/api-versioning.md +88 -0
  59. package/.claude/skills/api-engineering/resources/graphql-patterns.md +106 -0
  60. package/.claude/skills/api-engineering/resources/rate-limiting.md +118 -0
  61. package/.claude/skills/api-engineering/resources/rest-api-design.md +105 -0
  62. package/.claude/skills/backend-dev-guidelines/SKILL.md +306 -0
  63. package/.claude/skills/backend-dev-guidelines/resources/architecture-overview.md +451 -0
  64. package/.claude/skills/backend-dev-guidelines/resources/async-and-errors.md +307 -0
  65. package/.claude/skills/backend-dev-guidelines/resources/complete-examples.md +638 -0
  66. package/.claude/skills/backend-dev-guidelines/resources/configuration.md +275 -0
  67. package/.claude/skills/backend-dev-guidelines/resources/database-patterns.md +224 -0
  68. package/.claude/skills/backend-dev-guidelines/resources/middleware-guide.md +213 -0
  69. package/.claude/skills/backend-dev-guidelines/resources/routing-and-controllers.md +756 -0
  70. package/.claude/skills/backend-dev-guidelines/resources/sentry-and-monitoring.md +336 -0
  71. package/.claude/skills/backend-dev-guidelines/resources/services-and-repositories.md +789 -0
  72. package/.claude/skills/backend-dev-guidelines/resources/testing-guide.md +235 -0
  73. package/.claude/skills/backend-dev-guidelines/resources/validation-patterns.md +754 -0
  74. package/.claude/skills/budget-and-cost-management/SKILL.md +850 -0
  75. package/.claude/skills/build-engineering/SKILL.md +431 -0
  76. package/.claude/skills/build-engineering/resources/artifact-repositories.md +72 -0
  77. package/.claude/skills/build-engineering/resources/build-caching.md +96 -0
  78. package/.claude/skills/build-engineering/resources/build-pipelines.md +105 -0
  79. package/.claude/skills/build-engineering/resources/build-security.md +95 -0
  80. package/.claude/skills/build-engineering/resources/build-systems.md +389 -0
  81. package/.claude/skills/build-engineering/resources/compilation-optimization.md +201 -0
  82. package/.claude/skills/build-engineering/resources/dependency-management.md +73 -0
  83. package/.claude/skills/build-engineering/resources/monorepo-builds.md +110 -0
  84. package/.claude/skills/build-engineering/resources/performance-optimization.md +113 -0
  85. package/.claude/skills/build-engineering/resources/reproducible-builds.md +82 -0
  86. package/.claude/skills/cloud-engineering/SKILL.md +675 -0
  87. package/.claude/skills/cloud-engineering/resources/aws-patterns.md +742 -0
  88. package/.claude/skills/cloud-engineering/resources/azure-patterns.md +714 -0
  89. package/.claude/skills/cloud-engineering/resources/cleared-cloud-environments.md +987 -0
  90. package/.claude/skills/cloud-engineering/resources/cloud-cost-optimization.md +757 -0
  91. package/.claude/skills/cloud-engineering/resources/cloud-networking.md +1058 -0
  92. package/.claude/skills/cloud-engineering/resources/cloud-security-tools.md +1530 -0
  93. package/.claude/skills/cloud-engineering/resources/cloud-security.md +990 -0
  94. package/.claude/skills/cloud-engineering/resources/gcp-patterns.md +758 -0
  95. package/.claude/skills/cloud-engineering/resources/migration-strategies.md +820 -0
  96. package/.claude/skills/cloud-engineering/resources/multi-cloud-strategies.md +670 -0
  97. package/.claude/skills/cloud-engineering/resources/oci-patterns.md +1198 -0
  98. package/.claude/skills/cloud-engineering/resources/serverless-patterns.md +795 -0
  99. package/.claude/skills/cloud-engineering/resources/well-architected-frameworks.md +966 -0
  100. package/.claude/skills/cybersecurity/SKILL.md +409 -0
  101. package/.claude/skills/cybersecurity/resources/security-architecture.md +266 -0
  102. package/.claude/skills/database-engineering/SKILL.md +61 -0
  103. package/.claude/skills/database-engineering/resources/backup-and-recovery.md +72 -0
  104. package/.claude/skills/database-engineering/resources/database-replication.md +63 -0
  105. package/.claude/skills/database-engineering/resources/postgresql-fundamentals.md +70 -0
  106. package/.claude/skills/database-engineering/resources/query-optimization.md +68 -0
  107. package/.claude/skills/devsecops/SKILL.md +374 -0
  108. package/.claude/skills/devsecops/resources/ci-cd-security.md +204 -0
  109. package/.claude/skills/devsecops/resources/compliance-automation.md +530 -0
  110. package/.claude/skills/devsecops/resources/compliance-frameworks.md +2322 -0
  111. package/.claude/skills/devsecops/resources/container-security.md +915 -0
  112. package/.claude/skills/devsecops/resources/cspm-integration.md +1440 -0
  113. package/.claude/skills/devsecops/resources/policy-enforcement.md +619 -0
  114. package/.claude/skills/devsecops/resources/secrets-management.md +755 -0
  115. package/.claude/skills/devsecops/resources/security-monitoring.md +146 -0
  116. package/.claude/skills/devsecops/resources/security-scanning.md +887 -0
  117. package/.claude/skills/devsecops/resources/security-testing.md +203 -0
  118. package/.claude/skills/devsecops/resources/supply-chain-security.md +518 -0
  119. package/.claude/skills/devsecops/resources/vulnerability-management.md +481 -0
  120. package/.claude/skills/devsecops/resources/zero-trust-architecture.md +177 -0
  121. package/.claude/skills/documentation-as-code/SKILL.md +323 -0
  122. package/.claude/skills/documentation-as-code/resources/api-documentation.md +90 -0
  123. package/.claude/skills/documentation-as-code/resources/changelog-management.md +79 -0
  124. package/.claude/skills/documentation-as-code/resources/diagram-generation.md +44 -0
  125. package/.claude/skills/documentation-as-code/resources/docs-as-code-workflow.md +99 -0
  126. package/.claude/skills/documentation-as-code/resources/documentation-automation.md +68 -0
  127. package/.claude/skills/documentation-as-code/resources/documentation-sites.md +79 -0
  128. package/.claude/skills/documentation-as-code/resources/markdown-best-practices.md +162 -0
  129. package/.claude/skills/documentation-as-code/resources/openapi-specification.md +77 -0
  130. package/.claude/skills/documentation-as-code/resources/readme-engineering.md +60 -0
  131. package/.claude/skills/documentation-as-code/resources/technical-writing-guide.md +202 -0
  132. package/.claude/skills/engineering-management/SKILL.md +356 -0
  133. package/.claude/skills/engineering-management/resources/career-ladders.md +609 -0
  134. package/.claude/skills/engineering-management/resources/hiring-and-assessment.md +555 -0
  135. package/.claude/skills/engineering-management/resources/one-on-one-guides.md +609 -0
  136. package/.claude/skills/engineering-management/resources/resource-planning.md +557 -0
  137. package/.claude/skills/engineering-management/resources/team-organization-patterns.md +491 -0
  138. package/.claude/skills/engineering-management/resources/technical-interviews.md +474 -0
  139. package/.claude/skills/engineering-operations-management/SKILL.md +817 -0
  140. package/.claude/skills/error-tracking/SKILL.md +379 -0
  141. package/.claude/skills/frontend-dev-guidelines/SKILL.md +403 -0
  142. package/.claude/skills/frontend-dev-guidelines/resources/common-patterns.md +331 -0
  143. package/.claude/skills/frontend-dev-guidelines/resources/complete-examples.md +872 -0
  144. package/.claude/skills/frontend-dev-guidelines/resources/component-patterns.md +502 -0
  145. package/.claude/skills/frontend-dev-guidelines/resources/data-fetching.md +767 -0
  146. package/.claude/skills/frontend-dev-guidelines/resources/file-organization.md +502 -0
  147. package/.claude/skills/frontend-dev-guidelines/resources/loading-and-error-states.md +501 -0
  148. package/.claude/skills/frontend-dev-guidelines/resources/performance.md +406 -0
  149. package/.claude/skills/frontend-dev-guidelines/resources/routing-guide.md +364 -0
  150. package/.claude/skills/frontend-dev-guidelines/resources/styling-guide.md +428 -0
  151. package/.claude/skills/frontend-dev-guidelines/resources/typescript-standards.md +418 -0
  152. package/.claude/skills/general-it-engineering/SKILL.md +393 -0
  153. package/.claude/skills/general-it-engineering/resources/asset-management.md +712 -0
  154. package/.claude/skills/general-it-engineering/resources/automation-orchestration.md +817 -0
  155. package/.claude/skills/general-it-engineering/resources/business-continuity.md +786 -0
  156. package/.claude/skills/general-it-engineering/resources/change-management.md +715 -0
  157. package/.claude/skills/general-it-engineering/resources/enterprise-monitoring.md +729 -0
  158. package/.claude/skills/general-it-engineering/resources/help-desk-operations.md +738 -0
  159. package/.claude/skills/general-it-engineering/resources/incident-service-management.md +834 -0
  160. package/.claude/skills/general-it-engineering/resources/it-governance.md +753 -0
  161. package/.claude/skills/general-it-engineering/resources/itil-framework.md +503 -0
  162. package/.claude/skills/general-it-engineering/resources/service-management.md +669 -0
  163. package/.claude/skills/infrastructure-architecture/SKILL.md +328 -0
  164. package/.claude/skills/infrastructure-architecture/resources/architecture-decision-records.md +505 -0
  165. package/.claude/skills/infrastructure-architecture/resources/architecture-patterns.md +528 -0
  166. package/.claude/skills/infrastructure-architecture/resources/capacity-planning.md +453 -0
  167. package/.claude/skills/infrastructure-architecture/resources/cleared-environment-architecture.md +773 -0
  168. package/.claude/skills/infrastructure-architecture/resources/cost-architecture.md +499 -0
  169. package/.claude/skills/infrastructure-architecture/resources/data-architecture.md +501 -0
  170. package/.claude/skills/infrastructure-architecture/resources/disaster-recovery.md +535 -0
  171. package/.claude/skills/infrastructure-architecture/resources/migration-architecture.md +512 -0
  172. package/.claude/skills/infrastructure-architecture/resources/multi-region-design.md +608 -0
  173. package/.claude/skills/infrastructure-architecture/resources/reference-architectures.md +562 -0
  174. package/.claude/skills/infrastructure-architecture/resources/security-architecture.md +538 -0
  175. package/.claude/skills/infrastructure-architecture/resources/system-design-principles.md +489 -0
  176. package/.claude/skills/infrastructure-architecture/resources/workload-classification.md +1000 -0
  177. package/.claude/skills/infrastructure-strategy/SKILL.md +924 -0
  178. package/.claude/skills/network-engineering/SKILL.md +385 -0
  179. package/.claude/skills/network-engineering/resources/dns-management.md +738 -0
  180. package/.claude/skills/network-engineering/resources/load-balancing.md +820 -0
  181. package/.claude/skills/network-engineering/resources/network-architecture.md +546 -0
  182. package/.claude/skills/network-engineering/resources/network-security.md +921 -0
  183. package/.claude/skills/network-engineering/resources/network-troubleshooting.md +749 -0
  184. package/.claude/skills/network-engineering/resources/routing-switching.md +373 -0
  185. package/.claude/skills/network-engineering/resources/sdn-networking.md +695 -0
  186. package/.claude/skills/network-engineering/resources/service-mesh-networking.md +777 -0
  187. package/.claude/skills/network-engineering/resources/tcp-ip-protocols.md +444 -0
  188. package/.claude/skills/network-engineering/resources/vpn-connectivity.md +672 -0
  189. package/.claude/skills/observability-engineering/SKILL.md +101 -0
  190. package/.claude/skills/observability-engineering/resources/apm-tools.md +97 -0
  191. package/.claude/skills/observability-engineering/resources/correlation-strategies.md +87 -0
  192. package/.claude/skills/observability-engineering/resources/distributed-tracing.md +98 -0
  193. package/.claude/skills/observability-engineering/resources/logs-aggregation.md +118 -0
  194. package/.claude/skills/observability-engineering/resources/observability-cost-optimization.md +141 -0
  195. package/.claude/skills/observability-engineering/resources/opentelemetry.md +110 -0
  196. package/.claude/skills/platform-engineering/SKILL.md +555 -0
  197. package/.claude/skills/platform-engineering/resources/architecture-overview.md +600 -0
  198. package/.claude/skills/platform-engineering/resources/container-orchestration.md +916 -0
  199. package/.claude/skills/platform-engineering/resources/cost-optimization.md +634 -0
  200. package/.claude/skills/platform-engineering/resources/developer-platforms.md +670 -0
  201. package/.claude/skills/platform-engineering/resources/gitops-automation.md +650 -0
  202. package/.claude/skills/platform-engineering/resources/infrastructure-as-code.md +778 -0
  203. package/.claude/skills/platform-engineering/resources/infrastructure-standards.md +708 -0
  204. package/.claude/skills/platform-engineering/resources/multi-tenancy.md +602 -0
  205. package/.claude/skills/platform-engineering/resources/platform-security.md +711 -0
  206. package/.claude/skills/platform-engineering/resources/resource-management.md +592 -0
  207. package/.claude/skills/platform-engineering/resources/service-mesh.md +628 -0
  208. package/.claude/skills/release-engineering/SKILL.md +393 -0
  209. package/.claude/skills/release-engineering/resources/artifact-management.md +108 -0
  210. package/.claude/skills/release-engineering/resources/build-optimization.md +84 -0
  211. package/.claude/skills/release-engineering/resources/ci-cd-pipelines.md +411 -0
  212. package/.claude/skills/release-engineering/resources/deployment-strategies.md +197 -0
  213. package/.claude/skills/release-engineering/resources/pipeline-security.md +62 -0
  214. package/.claude/skills/release-engineering/resources/progressive-delivery.md +83 -0
  215. package/.claude/skills/release-engineering/resources/release-automation.md +68 -0
  216. package/.claude/skills/release-engineering/resources/release-orchestration.md +77 -0
  217. package/.claude/skills/release-engineering/resources/rollback-strategies.md +66 -0
  218. package/.claude/skills/release-engineering/resources/versioning-strategies.md +59 -0
  219. package/.claude/skills/route-tester/SKILL.md +392 -0
  220. package/.claude/skills/skill-developer/ADVANCED.md +197 -0
  221. package/.claude/skills/skill-developer/HOOK_MECHANISMS.md +306 -0
  222. package/.claude/skills/skill-developer/PATTERNS_LIBRARY.md +152 -0
  223. package/.claude/skills/skill-developer/SKILL.md +430 -0
  224. package/.claude/skills/skill-developer/SKILL_RULES_REFERENCE.md +315 -0
  225. package/.claude/skills/skill-developer/TRIGGER_TYPES.md +305 -0
  226. package/.claude/skills/skill-developer/TROUBLESHOOTING.md +514 -0
  227. package/.claude/skills/skill-rules.json +2940 -0
  228. package/.claude/skills/sre/SKILL.md +464 -0
  229. package/.claude/skills/sre/resources/alerting-best-practices.md +282 -0
  230. package/.claude/skills/sre/resources/capacity-planning.md +226 -0
  231. package/.claude/skills/sre/resources/chaos-engineering.md +193 -0
  232. package/.claude/skills/sre/resources/disaster-recovery.md +232 -0
  233. package/.claude/skills/sre/resources/incident-management.md +436 -0
  234. package/.claude/skills/sre/resources/observability-stack.md +240 -0
  235. package/.claude/skills/sre/resources/on-call-runbooks.md +167 -0
  236. package/.claude/skills/sre/resources/performance-optimization.md +108 -0
  237. package/.claude/skills/sre/resources/reliability-patterns.md +183 -0
  238. package/.claude/skills/sre/resources/slo-sli-sla.md +464 -0
  239. package/.claude/skills/sre/resources/toil-reduction.md +145 -0
  240. package/.claude/skills/systems-engineering/SKILL.md +648 -0
  241. package/.claude/skills/systems-engineering/resources/automation-patterns.md +771 -0
  242. package/.claude/skills/systems-engineering/resources/configuration-management.md +998 -0
  243. package/.claude/skills/systems-engineering/resources/linux-administration.md +672 -0
  244. package/.claude/skills/systems-engineering/resources/networking-fundamentals.md +982 -0
  245. package/.claude/skills/systems-engineering/resources/performance-tuning.md +871 -0
  246. package/.claude/skills/systems-engineering/resources/powershell-scripting.md +482 -0
  247. package/.claude/skills/systems-engineering/resources/security-hardening.md +739 -0
  248. package/.claude/skills/systems-engineering/resources/shell-scripting.md +915 -0
  249. package/.claude/skills/systems-engineering/resources/storage-management.md +628 -0
  250. package/.claude/skills/systems-engineering/resources/system-monitoring.md +787 -0
  251. package/.claude/skills/systems-engineering/resources/troubleshooting-guide.md +753 -0
  252. package/.claude/skills/systems-engineering/resources/windows-administration.md +738 -0
  253. package/.claude/skills/technical-leadership/SKILL.md +728 -0
  254. package/CHANGELOG.md +90 -54
  255. package/README.md +94 -0
  256. package/backend/docs/SECRETS_DOCUMENTATION.md +327 -0
  257. package/backend/jest.config.js +59 -0
  258. package/backend/package-lock.json +6129 -0
  259. package/backend/package.json +16 -4
  260. package/backend/prisma/migrations/20251026104609_add_websocket_api/migration.sql +33 -0
  261. package/backend/prisma/schema.prisma +33 -0
  262. package/backend/src/__tests__/core/DependencyService.test.js +336 -0
  263. package/backend/src/__tests__/core/UserService.test.js +875 -0
  264. package/backend/src/__tests__/repositories/BaseRepository.test.js +146 -0
  265. package/backend/src/__tests__/repositories/BotRepository.test.js +118 -0
  266. package/backend/src/__tests__/repositories/CommandRepository.test.js +132 -0
  267. package/backend/src/__tests__/repositories/EventGraphRepository.test.js +93 -0
  268. package/backend/src/__tests__/repositories/GroupRepository.test.js +155 -0
  269. package/backend/src/__tests__/repositories/PermissionRepository.test.js +130 -0
  270. package/backend/src/__tests__/repositories/PluginRepository.test.js +107 -0
  271. package/backend/src/__tests__/repositories/ServerRepository.test.js +80 -0
  272. package/backend/src/__tests__/repositories/UserRepository.test.js +128 -0
  273. package/backend/src/__tests__/secretsFilter.test.js +425 -0
  274. package/backend/src/__tests__/services/BotLifecycleService.test.js +411 -0
  275. package/backend/src/__tests__/services/BotProcessManager.test.js +285 -0
  276. package/backend/src/__tests__/services/CacheManager.test.js +125 -0
  277. package/backend/src/__tests__/services/CommandExecutionService.test.js +460 -0
  278. package/backend/src/__tests__/services/ResourceMonitorService.test.js +207 -0
  279. package/backend/src/__tests__/services/TelemetryService.test.js +291 -0
  280. package/backend/src/__tests__/setup.js +25 -0
  281. package/backend/src/api/routes/apiKeys.js +181 -0
  282. package/backend/src/api/routes/bots.js +49 -7
  283. package/backend/src/api/routes/plugins.js +2 -1
  284. package/backend/src/api/routes/system.js +174 -0
  285. package/backend/src/container.js +82 -0
  286. package/backend/src/core/BotManager.js +142 -871
  287. package/backend/src/core/BotManager.old.js +1093 -0
  288. package/backend/src/core/BotProcess.js +1092 -858
  289. package/backend/src/core/EventGraphManager.js +280 -198
  290. package/backend/src/core/GraphExecutionEngine.js +321 -325
  291. package/backend/src/core/MessageQueue.js +27 -6
  292. package/backend/src/core/NodeRegistry.js +37 -1134
  293. package/backend/src/core/PluginManager.js +62 -12
  294. package/backend/src/core/PrismaService.js +32 -0
  295. package/backend/src/core/UserService.js +3 -3
  296. package/backend/src/core/__tests__/PrismaService.test.js +24 -0
  297. package/backend/src/core/commands/README.md +305 -0
  298. package/backend/src/core/commands/dev.js +13 -7
  299. package/backend/src/core/commands/ping.js +10 -4
  300. package/backend/src/core/commands/whois.js +63 -0
  301. package/backend/src/core/config/validation.js +27 -0
  302. package/backend/src/core/constants/graphTypes.js +21 -0
  303. package/backend/src/core/node-registries/actions.js +132 -0
  304. package/backend/src/core/node-registries/arrays.js +137 -0
  305. package/backend/src/core/node-registries/bot.js +23 -0
  306. package/backend/src/core/node-registries/data.js +290 -0
  307. package/backend/src/core/node-registries/debug.js +26 -0
  308. package/backend/src/core/node-registries/events.js +187 -0
  309. package/backend/src/core/node-registries/flow.js +139 -0
  310. package/backend/src/core/node-registries/logic.js +45 -0
  311. package/backend/src/core/node-registries/math.js +42 -0
  312. package/backend/src/core/node-registries/objects.js +98 -0
  313. package/backend/src/core/node-registries/strings.js +153 -0
  314. package/backend/src/core/node-registries/time.js +113 -0
  315. package/backend/src/core/node-registries/users.js +79 -0
  316. package/backend/src/core/nodes/{action_bot_look_at.js → actions/bot_look_at.js} +36 -36
  317. package/backend/src/core/nodes/{action_bot_set_variable.js → actions/bot_set_variable.js} +32 -32
  318. package/backend/src/core/nodes/{action_send_log.js → actions/send_log.js} +28 -23
  319. package/backend/src/core/nodes/{action_send_message.js → actions/send_message.js} +32 -32
  320. package/backend/src/core/nodes/actions/send_websocket_response.js +33 -0
  321. package/backend/src/core/nodes/arrays/get_next.js +35 -0
  322. package/backend/src/core/nodes/{data_cast.js → data/cast.js} +8 -0
  323. package/backend/src/core/nodes/data/datetime_literal.js +27 -0
  324. package/backend/src/core/nodes/data/entity_info.js +69 -0
  325. package/backend/src/core/nodes/data/get_nearby_entities.js +32 -0
  326. package/backend/src/core/nodes/data/get_nearby_players.js +64 -0
  327. package/backend/src/core/nodes/{data_get_user_field.js → data/get_user_field.js} +1 -1
  328. package/backend/src/core/nodes/data/type_check.js +53 -0
  329. package/backend/src/core/nodes/{debug_log.js → debug/log.js} +16 -16
  330. package/backend/src/core/nodes/{flow_branch.js → flow/branch.js} +15 -15
  331. package/backend/src/core/nodes/{flow_break.js → flow/break.js} +14 -14
  332. package/backend/src/core/nodes/flow/delay.js +43 -0
  333. package/backend/src/core/nodes/{flow_for_each.js → flow/for_each.js} +39 -39
  334. package/backend/src/core/nodes/{flow_sequence.js → flow/sequence.js} +16 -16
  335. package/backend/src/core/nodes/{flow_switch.js → flow/switch.js} +47 -47
  336. package/backend/src/core/nodes/{flow_while.js → flow/while.js} +1 -1
  337. package/backend/src/core/nodes/logic/__tests__/compare.test.js +83 -0
  338. package/backend/src/core/nodes/math/__tests__/operation.test.js +65 -0
  339. package/backend/src/core/nodes/strings/__tests__/concat.test.js +89 -0
  340. package/backend/src/core/nodes/time/__tests__/now.test.js +24 -0
  341. package/backend/src/core/nodes/time/add.js +33 -0
  342. package/backend/src/core/nodes/time/compare.js +35 -0
  343. package/backend/src/core/nodes/time/diff.js +29 -0
  344. package/backend/src/core/nodes/time/format.js +32 -0
  345. package/backend/src/core/nodes/time/now.js +18 -0
  346. package/backend/src/core/nodes/{user_check_blacklist.js → users/check_blacklist.js} +37 -37
  347. package/backend/src/core/nodes/{user_get_groups.js → users/get_groups.js} +36 -36
  348. package/backend/src/core/nodes/{user_get_permissions.js → users/get_permissions.js} +36 -36
  349. package/backend/src/core/nodes/{user_set_blacklist.js → users/set_blacklist.js} +37 -37
  350. package/backend/src/core/services/BotLifecycleService.js +596 -0
  351. package/backend/src/core/services/BotProcessManager.js +163 -0
  352. package/backend/src/core/services/CacheManager.js +111 -0
  353. package/backend/src/core/services/CommandExecutionService.js +351 -0
  354. package/backend/src/core/services/ResourceMonitorService.js +90 -0
  355. package/backend/src/core/services/TelemetryService.js +124 -0
  356. package/backend/src/core/services/ValidationService.js +132 -0
  357. package/backend/src/core/services/__tests__/ValidationService.test.js +148 -0
  358. package/backend/src/core/services.js +20 -5
  359. package/backend/src/core/system/CommandContext.js +84 -0
  360. package/backend/src/core/system/Transport.js +78 -0
  361. package/backend/src/core/utils/__tests__/jsonParser.test.js +44 -0
  362. package/backend/src/core/utils/jsonParser.js +18 -0
  363. package/backend/src/core/utils/secretsFilter.js +262 -0
  364. package/backend/src/core/utils/variableParser.js +89 -0
  365. package/backend/src/core/validation/__tests__/nodeSchemas.test.js +175 -0
  366. package/backend/src/core/validation/nodeSchemas.js +112 -0
  367. package/backend/src/lib/prisma.js +2 -4
  368. package/backend/src/real-time/botApi/handlers/commandHandlers.js +28 -0
  369. package/backend/src/real-time/botApi/handlers/graphHandlers.js +99 -0
  370. package/backend/src/real-time/botApi/handlers/graphWebSocketHandlers.js +147 -0
  371. package/backend/src/real-time/botApi/handlers/index.js +43 -0
  372. package/backend/src/real-time/botApi/handlers/messageHandlers.js +66 -0
  373. package/backend/src/real-time/botApi/handlers/statusHandlers.js +17 -0
  374. package/backend/src/real-time/botApi/handlers/userHandlers.js +141 -0
  375. package/backend/src/real-time/botApi/index.js +40 -0
  376. package/backend/src/real-time/botApi/middleware.js +79 -0
  377. package/backend/src/real-time/botApi/utils.js +54 -0
  378. package/backend/src/real-time/socketHandler.js +6 -2
  379. package/backend/src/repositories/BaseRepository.js +43 -0
  380. package/backend/src/repositories/BotRepository.js +42 -0
  381. package/backend/src/repositories/CommandRepository.js +53 -0
  382. package/backend/src/repositories/EventGraphRepository.js +40 -0
  383. package/backend/src/repositories/GroupRepository.js +69 -0
  384. package/backend/src/repositories/PermissionRepository.js +48 -0
  385. package/backend/src/repositories/PluginRepository.js +42 -0
  386. package/backend/src/repositories/ServerRepository.js +27 -0
  387. package/backend/src/repositories/UserRepository.js +48 -0
  388. package/backend/src/server.js +3 -0
  389. package/backend/src/test-refactor.js +85 -0
  390. package/frontend/dist/assets/index-CfTo92bP.css +1 -0
  391. package/frontend/dist/assets/index-CiFD5X9Z.js +8344 -0
  392. package/frontend/dist/index.html +2 -2
  393. package/frontend/package.json +0 -5
  394. package/package.json +2 -1
  395. package/frontend/dist/assets/index-B9GedHEa.js +0 -8352
  396. package/frontend/dist/assets/index-zLiy9MDx.css +0 -1
  397. package/nul +0 -0
  398. /package/backend/src/core/nodes/{action_http_request.js → actions/http_request.js} +0 -0
  399. /package/backend/src/core/nodes/{array_add_element.js → arrays/add_element.js} +0 -0
  400. /package/backend/src/core/nodes/{array_contains.js → arrays/contains.js} +0 -0
  401. /package/backend/src/core/nodes/{array_find_index.js → arrays/find_index.js} +0 -0
  402. /package/backend/src/core/nodes/{array_get_by_index.js → arrays/get_by_index.js} +0 -0
  403. /package/backend/src/core/nodes/{array_get_random_element.js → arrays/get_random_element.js} +0 -0
  404. /package/backend/src/core/nodes/{array_remove_by_index.js → arrays/remove_by_index.js} +0 -0
  405. /package/backend/src/core/nodes/{bot_get_position.js → bot/get_position.js} +0 -0
  406. /package/backend/src/core/nodes/{data_array_literal.js → data/array_literal.js} +0 -0
  407. /package/backend/src/core/nodes/{data_boolean_literal.js → data/boolean_literal.js} +0 -0
  408. /package/backend/src/core/nodes/{data_get_argument.js → data/get_argument.js} +0 -0
  409. /package/backend/src/core/nodes/{data_get_bot_look.js → data/get_bot_look.js} +0 -0
  410. /package/backend/src/core/nodes/{data_get_entity_field.js → data/get_entity_field.js} +0 -0
  411. /package/backend/src/core/nodes/{data_get_server_players.js → data/get_server_players.js} +0 -0
  412. /package/backend/src/core/nodes/{data_get_variable.js → data/get_variable.js} +0 -0
  413. /package/backend/src/core/nodes/{data_length.js → data/length.js} +0 -0
  414. /package/backend/src/core/nodes/{data_make_object.js → data/make_object.js} +0 -0
  415. /package/backend/src/core/nodes/{data_number_literal.js → data/number_literal.js} +0 -0
  416. /package/backend/src/core/nodes/{data_string_literal.js → data/string_literal.js} +0 -0
  417. /package/backend/src/core/nodes/{logic_compare.js → logic/compare.js} +0 -0
  418. /package/backend/src/core/nodes/{logic_operation.js → logic/operation.js} +0 -0
  419. /package/backend/src/core/nodes/{math_operation.js → math/operation.js} +0 -0
  420. /package/backend/src/core/nodes/{math_random_number.js → math/random_number.js} +0 -0
  421. /package/backend/src/core/nodes/{object_create.js → objects/create.js} +0 -0
  422. /package/backend/src/core/nodes/{object_delete.js → objects/delete.js} +0 -0
  423. /package/backend/src/core/nodes/{object_get.js → objects/get.js} +0 -0
  424. /package/backend/src/core/nodes/{object_has_key.js → objects/has_key.js} +0 -0
  425. /package/backend/src/core/nodes/{object_set.js → objects/set.js} +0 -0
  426. /package/backend/src/core/nodes/{string_concat.js → strings/concat.js} +0 -0
  427. /package/backend/src/core/nodes/{string_contains.js → strings/contains.js} +0 -0
  428. /package/backend/src/core/nodes/{string_ends_with.js → strings/ends_with.js} +0 -0
  429. /package/backend/src/core/nodes/{string_equals.js → strings/equals.js} +0 -0
  430. /package/backend/src/core/nodes/{string_length.js → strings/length.js} +0 -0
  431. /package/backend/src/core/nodes/{string_matches.js → strings/matches.js} +0 -0
  432. /package/backend/src/core/nodes/{string_split.js → strings/split.js} +0 -0
  433. /package/backend/src/core/nodes/{string_starts_with.js → strings/starts_with.js} +0 -0
@@ -0,0 +1,323 @@
1
+ # Documentation as Code
2
+
3
+ Comprehensive guide to technical writing, docs-as-code practices, API documentation, diagram generation, and documentation automation.
4
+
5
+ ## Purpose
6
+
7
+ Enable teams to create, maintain, and publish high-quality technical documentation using version control, code review, and CI/CD practices.
8
+
9
+ ## When to Use This Skill
10
+
11
+ Automatically activates when working on:
12
+ - README files and project documentation
13
+ - API documentation (OpenAPI/Swagger)
14
+ - Architecture diagrams (PlantUML, Mermaid)
15
+ - Documentation sites (Docusaurus, MkDocs)
16
+ - Technical writing and style guides
17
+ - Documentation automation and testing
18
+ - Changelog management
19
+ - Developer onboarding docs
20
+
21
+ ## Quick Start Checklist
22
+
23
+ When creating documentation:
24
+
25
+ - [ ] Write in Markdown (version-controllable)
26
+ - [ ] Use clear, concise language
27
+ - [ ] Include code examples
28
+ - [ ] Add diagrams where helpful
29
+ - [ ] Set up docs-as-code workflow (Git + CI/CD)
30
+ - [ ] Enable automated link checking
31
+ - [ ] Configure spell checking
32
+ - [ ] Create table of contents
33
+ - [ ] Test code examples
34
+ - [ ] Set up documentation site (if needed)
35
+
36
+ ## Core Concepts
37
+
38
+ ### Docs-as-Code Philosophy
39
+
40
+ **Treat documentation like code:**
41
+ ```
42
+ Version Control → Git (PRs, reviews, history)
43
+ Review Process → Pull requests with feedback
44
+ CI/CD → Build, test, deploy automatically
45
+ Testing → Link checking, spell checking, code validation
46
+ Publishing → Automated deployment to docs site
47
+ ```
48
+
49
+ ### Documentation Types
50
+
51
+ ```
52
+ README: Project overview, quick start
53
+ API Docs: REST, GraphQL endpoint documentation
54
+ Architecture: System design, diagrams, ADRs
55
+ Runbooks: Operational procedures
56
+ Guides: How-to tutorials, best practices
57
+ Reference: API reference, configuration options
58
+ Changelog: Version history, release notes
59
+ ```
60
+
61
+ ## Common Patterns
62
+
63
+ ### Pattern 1: Project README Structure
64
+
65
+ ```markdown
66
+ # Project Name
67
+
68
+ Brief description (1-2 sentences)
69
+
70
+ ## Features
71
+
72
+ - Feature 1
73
+ - Feature 2
74
+ - Feature 3
75
+
76
+ ## Quick Start
77
+
78
+ ```bash
79
+ npm install
80
+ npm run dev
81
+ ```
82
+
83
+ ## Documentation
84
+
85
+ - [API Reference](docs/api.md)
86
+ - [Architecture](docs/architecture.md)
87
+ - [Contributing](CONTRIBUTING.md)
88
+
89
+ ## Installation
90
+
91
+ Detailed installation instructions
92
+
93
+ ## Usage
94
+
95
+ Code examples
96
+
97
+ ## Configuration
98
+
99
+ Environment variables, config files
100
+
101
+ ## Contributing
102
+
103
+ How to contribute
104
+
105
+ ## License
106
+
107
+ MIT
108
+ ```
109
+
110
+ ---
111
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
112
+ 🎯 SKILL ACTIVATED: documentation-as-code
113
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
114
+
115
+
116
+ ### Pattern 2: API Documentation (OpenAPI)
117
+
118
+ ```yaml
119
+ # openapi.yaml
120
+ openapi: 3.0.0
121
+ info:
122
+ title: User API
123
+ version: 1.0.0
124
+
125
+ paths:
126
+ /users:
127
+ get:
128
+ summary: List all users
129
+ parameters:
130
+ - name: page
131
+ in: query
132
+ schema:
133
+ type: integer
134
+ responses:
135
+ '200':
136
+ description: Successful response
137
+ content:
138
+ application/json:
139
+ schema:
140
+ type: array
141
+ items:
142
+ $ref: '#/components/schemas/User'
143
+
144
+ components:
145
+ schemas:
146
+ User:
147
+ type: object
148
+ properties:
149
+ id:
150
+ type: string
151
+ name:
152
+ type: string
153
+ email:
154
+ type: string
155
+ ```
156
+
157
+ ---
158
+
159
+ ### Pattern 3: Diagrams as Code
160
+
161
+ ```
162
+ PlantUML:
163
+ @startuml
164
+ User -> API: Request
165
+ API -> Database: Query
166
+ Database -> API: Result
167
+ API -> User: Response
168
+ @enduml
169
+
170
+ Mermaid:
171
+ ```mermaid
172
+ graph LR
173
+ A[User] --> B[API Gateway]
174
+ B --> C[Service 1]
175
+ B --> D[Service 2]
176
+ ```
177
+ ```
178
+
179
+ ## Resource Files
180
+
181
+ For detailed guidance on specific topics, see:
182
+
183
+ ### Technical Writing
184
+ - **[technical-writing-guide.md](resources/technical-writing-guide.md)** - Structure, clarity, examples, audience targeting, style guidelines
185
+ - **[markdown-best-practices.md](resources/markdown-best-practices.md)** - GFM, formatting, linking, images, tables, code blocks
186
+
187
+ ### API Documentation
188
+ - **[api-documentation.md](resources/api-documentation.md)** - OpenAPI/Swagger, REST docs, GraphQL docs, API design documentation
189
+ - **[openapi-specification.md](resources/openapi-specification.md)** - OpenAPI 3.0 spec, schemas, paths, components, examples
190
+
191
+ ### Diagrams & Visualization
192
+ - **[diagram-generation.md](resources/diagram-generation.md)** - PlantUML, Mermaid, diagrams.net, C4 model, architecture diagrams
193
+ - **[documentation-sites.md](resources/documentation-sites.md)** - Docusaurus, MkDocs, GitBook, VuePress, Astro Starlight
194
+
195
+ ### Automation & Testing
196
+ - **[documentation-automation.md](resources/documentation-automation.md)** - Auto-generation, linting, link checking, CI/CD pipelines
197
+ - **[readme-engineering.md](resources/readme-engineering.md)** - Project READMEs, structure, badges, quick starts, examples
198
+
199
+ ### Version Control
200
+ - **[changelog-management.md](resources/changelog-management.md)** - Keep a Changelog, semantic versioning, release notes, automation
201
+ - **[docs-as-code-workflow.md](resources/docs-as-code-workflow.md)** - Git workflow, PR reviews, versioning, deployment strategies
202
+
203
+ ## Best Practices
204
+
205
+ ### 1. Write for Your Audience
206
+
207
+ **Developer documentation:**
208
+ - Technical, concise
209
+ - Code examples
210
+ - API references
211
+
212
+ **User documentation:**
213
+ - Less technical
214
+ - Step-by-step guides
215
+ - Screenshots
216
+
217
+ ### 2. Show, Don't Just Tell
218
+
219
+ ```markdown
220
+ # ❌ Bad
221
+ The API returns user data.
222
+
223
+ # ✅ Good
224
+ The API returns user data in JSON format:
225
+
226
+ ```json
227
+ {
228
+ "id": "123",
229
+ "name": "John Doe",
230
+ "email": "john@example.com"
231
+ }
232
+ ```
233
+ ```
234
+
235
+ ### 3. Keep It Up to Date
236
+
237
+ - Documentation updates in same PR as code changes
238
+ - Automated link checking
239
+ - Regular documentation reviews
240
+ - Mark deprecated features clearly
241
+
242
+ ### 4. Use Version Control
243
+
244
+ - All docs in Git
245
+ - Pull request reviews
246
+ - Track changes over time
247
+ - Easy rollback if needed
248
+
249
+ ### 5. Automate Everything
250
+
251
+ - Build docs automatically (CI/CD)
252
+ - Check links (broken link detection)
253
+ - Spell check
254
+ - Deploy on merge to main
255
+
256
+ ### 6. Make It Searchable
257
+
258
+ - Use docs site with search (Algolia, etc.)
259
+ - Clear headings and structure
260
+ - Table of contents
261
+ - Good SEO (if public)
262
+
263
+ ## Anti-Patterns to Avoid
264
+
265
+ ❌ Documentation in Word/Google Docs (not version controlled)
266
+ ❌ Outdated code examples
267
+ ❌ No diagrams (hard to understand architecture)
268
+ ❌ Inconsistent formatting
269
+ ❌ No table of contents (large docs)
270
+ ❌ Broken links (not tested)
271
+ ❌ Jargon without explanation
272
+ ❌ Missing quick start guide
273
+
274
+ ## Common Tasks
275
+
276
+ ### Task: Create OpenAPI Documentation
277
+
278
+ 1. Define API spec in `openapi.yaml`
279
+ 2. Add schemas, paths, responses
280
+ 3. Generate docs with Swagger UI or Redoc
281
+ 4. Host on docs site
282
+ 5. Keep in sync with code (codegen or validation)
283
+
284
+ ### Task: Set Up Documentation Site
285
+
286
+ 1. Choose tool (Docusaurus, MkDocs, etc.)
287
+ 2. Initialize site structure
288
+ 3. Write documentation in Markdown
289
+ 4. Configure navigation/sidebar
290
+ 5. Set up CI/CD (deploy on push to main)
291
+ 6. Add search (Algolia)
292
+
293
+ ### Task: Generate Architecture Diagram
294
+
295
+ 1. Choose tool (PlantUML, Mermaid, draw.io)
296
+ 2. Create diagram as code
297
+ 3. Commit to Git (version controlled)
298
+ 4. Auto-generate PNG/SVG in CI
299
+ 5. Embed in documentation
300
+
301
+ ## Integration Points
302
+
303
+ This skill integrates with:
304
+ - **skill-developer**: Documenting skills
305
+ - **backend-dev-guidelines**: API documentation
306
+ - **frontend-dev-guidelines**: Component documentation
307
+ - **infrastructure-architecture**: Architecture diagrams and docs
308
+ - All skills: Every project needs documentation
309
+
310
+ ## Triggers and Activation
311
+
312
+ This skill activates when you:
313
+ - Edit README or .md files
314
+ - Work with OpenAPI/Swagger specs
315
+ - Create architecture diagrams
316
+ - Set up documentation sites
317
+ - Write technical content
318
+
319
+ ---
320
+
321
+ **Total Resources:** 10 detailed guides covering all aspects of documentation as code
322
+ **Focus:** Version control, automation, API docs, diagrams, technical writing
323
+ **Maintained by:** Documentation team based on industry best practices
@@ -0,0 +1,90 @@
1
+ # API Documentation
2
+
3
+ Guide to documenting REST APIs, GraphQL APIs, and generating interactive API documentation using OpenAPI/Swagger.
4
+
5
+ ## REST API Documentation Template
6
+
7
+ ```markdown
8
+ ## POST /api/users
9
+
10
+ Create a new user account.
11
+
12
+ ### Authentication
13
+ Requires API key:
14
+ ```
15
+ Authorization: Bearer <token>
16
+ ```
17
+
18
+ ### Request
19
+ ```json
20
+ {
21
+ "email": "user@example.com",
22
+ "name": "John Doe"
23
+ }
24
+ ```
25
+
26
+ ### Response (201)
27
+ ```json
28
+ {
29
+ "id": "usr_123",
30
+ "email": "user@example.com",
31
+ "name": "John Doe"
32
+ }
33
+ ```
34
+
35
+ ### Errors
36
+ - 400: Invalid input
37
+ - 401: Unauthorized
38
+ - 409: Email exists
39
+ ```
40
+
41
+ ## OpenAPI Example
42
+
43
+ ```yaml
44
+ openapi: 3.0.0
45
+ info:
46
+ title: API
47
+ version: 1.0.0
48
+
49
+ paths:
50
+ /users:
51
+ post:
52
+ summary: Create user
53
+ requestBody:
54
+ content:
55
+ application/json:
56
+ schema:
57
+ $ref: '#/components/schemas/UserInput'
58
+ responses:
59
+ '201':
60
+ description: Created
61
+ content:
62
+ application/json:
63
+ schema:
64
+ $ref: '#/components/schemas/User'
65
+
66
+ components:
67
+ schemas:
68
+ User:
69
+ type: object
70
+ properties:
71
+ id:
72
+ type: string
73
+ email:
74
+ type: string
75
+ ```
76
+
77
+ ## Best Practices
78
+
79
+ ✅ Complete request/response examples
80
+ ✅ Document all error codes
81
+ ✅ Show authentication requirements
82
+ ✅ Include curl examples
83
+ ✅ Keep spec synced with code
84
+ ✅ Use Swagger UI for interactive docs
85
+
86
+ ---
87
+
88
+ **Related Resources:**
89
+ - openapi-specification.md - Complete OpenAPI guide
90
+ - technical-writing-guide.md - Writing style
@@ -0,0 +1,79 @@
1
+ # Changelog Management
2
+
3
+ Guide to maintaining changelogs following Keep a Changelog format.
4
+
5
+ ## Keep a Changelog Format
6
+
7
+ ```markdown
8
+ # Changelog
9
+
10
+ All notable changes to this project will be documented in this file.
11
+
12
+ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
13
+ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
14
+
15
+ ## [Unreleased]
16
+
17
+ ### Added
18
+ - New feature X
19
+
20
+ ### Changed
21
+ - Updated feature Y
22
+
23
+ ### Fixed
24
+ - Bug fix Z
25
+
26
+ ## [1.2.0] - 2024-01-15
27
+
28
+ ### Added
29
+ - API endpoint for user management
30
+ - JWT authentication
31
+
32
+ ### Changed
33
+ - Improved error handling
34
+
35
+ ### Deprecated
36
+ - Old authentication method (use JWT)
37
+
38
+ ### Removed
39
+ - Support for Node.js 14
40
+
41
+ ### Fixed
42
+ - Memory leak in worker process
43
+
44
+ ### Security
45
+ - Updated dependencies to fix CVE-2024-0001
46
+
47
+ ## [1.1.0] - 2023-12-01
48
+ ...
49
+
50
+ ## [1.0.0] - 2023-11-01
51
+ - Initial release
52
+ ```
53
+
54
+ ## Semantic Versioning
55
+
56
+ ```
57
+ MAJOR.MINOR.PATCH
58
+
59
+ MAJOR: Breaking changes
60
+ MINOR: New features (backward-compatible)
61
+ PATCH: Bug fixes (backward-compatible)
62
+
63
+ Examples:
64
+ 1.0.0 → 1.0.1: Bug fix
65
+ 1.0.1 → 1.1.0: New feature
66
+ 1.1.0 → 2.0.0: Breaking change
67
+ ```
68
+
69
+ ## Automation
70
+
71
+ ```bash
72
+ # Generate changelog from Git commits
73
+ npx conventional-changelog-cli -p angular -i CHANGELOG.md -s
74
+ ```
75
+
76
+ ---
77
+
78
+ **Related Resources:**
79
+ - docs-as-code-workflow.md - Versioning workflow
@@ -0,0 +1,44 @@
1
+ # Diagram Generation
2
+
3
+ Guide to creating diagrams as code using PlantUML, Mermaid, and other tools.
4
+
5
+ ## Mermaid (GitHub-native)
6
+
7
+ ```markdown
8
+ ```mermaid
9
+ graph LR
10
+ A[User] --> B[API]
11
+ B --> C[Database]
12
+ ```
13
+
14
+ ```mermaid
15
+ sequenceDiagram
16
+ User->>API: Request
17
+ API->>DB: Query
18
+ DB-->>API: Result
19
+ API-->>User: Response
20
+ ```
21
+ ```
22
+
23
+ ## PlantUML
24
+
25
+ ```plantuml
26
+ @startuml
27
+ User -> API: Request
28
+ API -> Database: Query
29
+ Database -> API: Result
30
+ API -> User: Response
31
+ @enduml
32
+ ```
33
+
34
+ ## Best Practices
35
+
36
+ ✅ Version control diagrams as code
37
+ ✅ Use consistent notation
38
+ ✅ Keep diagrams simple
39
+ ✅ Auto-generate images in CI
40
+
41
+ ---
42
+
43
+ **Related Resources:**
44
+ - technical-writing-guide.md - When to use diagrams
@@ -0,0 +1,99 @@
1
+ # Docs-as-Code Workflow
2
+
3
+ Complete workflow for treating documentation like code with Git, reviews, and CI/CD.
4
+
5
+ ## Git Workflow
6
+
7
+ ```bash
8
+ # Create documentation branch
9
+ git checkout -b docs/add-api-guide
10
+
11
+ # Write documentation
12
+ vim docs/api-guide.md
13
+
14
+ # Commit with clear message
15
+ git add docs/api-guide.md
16
+ git commit -m "docs: Add API authentication guide"
17
+
18
+ # Push and create PR
19
+ git push origin docs/add-api-guide
20
+ gh pr create --title "Add API authentication guide"
21
+ ```
22
+
23
+ ## Pull Request Review
24
+
25
+ ```markdown
26
+ ## Documentation PR Checklist
27
+
28
+ - [ ] Spelling and grammar checked
29
+ - [ ] Code examples tested
30
+ - [ ] Links verified (no broken links)
31
+ - [ ] Screenshots up-to-date (if any)
32
+ - [ ] TOC updated
33
+ - [ ] Related docs updated
34
+ ```
35
+
36
+ ## CI/CD Pipeline
37
+
38
+ ```yaml
39
+ # .github/workflows/docs.yml
40
+ name: Documentation
41
+ on: [push, pull_request]
42
+
43
+ jobs:
44
+ lint:
45
+ runs-on: ubuntu-latest
46
+ steps:
47
+ - uses: actions/checkout@v3
48
+ - name: Lint Markdown
49
+ run: npx markdownlint-cli '**/*.md'
50
+
51
+ link-check:
52
+ runs-on: ubuntu-latest
53
+ steps:
54
+ - uses: actions/checkout@v3
55
+ - name: Check Links
56
+ uses: gaurav-nelson/github-action-markdown-link-check@v1
57
+
58
+ build:
59
+ runs-on: ubuntu-latest
60
+ steps:
61
+ - uses: actions/checkout@v3
62
+ - name: Build Docs Site
63
+ run: |
64
+ npm install
65
+ npm run build
66
+ - name: Deploy to GitHub Pages
67
+ if: github.ref == 'refs/heads/main'
68
+ uses: peaceiris/actions-gh-pages@v3
69
+ with:
70
+ github_token: ${{ secrets.GITHUB_TOKEN }}
71
+ publish_dir: ./build
72
+ ```
73
+
74
+ ## Versioning
75
+
76
+ ```
77
+ docs/
78
+ v1.0/
79
+ getting-started.md
80
+ api-reference.md
81
+ v2.0/
82
+ getting-started.md
83
+ api-reference.md
84
+ latest/ → symlink to v2.0
85
+ ```
86
+
87
+ ## Best Practices
88
+
89
+ ✅ Update docs in same PR as code changes
90
+ ✅ Require docs review before merge
91
+ ✅ Auto-deploy docs on main branch
92
+ ✅ Version docs alongside code
93
+ ✅ Use branch protection for docs/
94
+
95
+ ---
96
+
97
+ **Related Resources:**
98
+ - documentation-automation.md - Automation tools
99
+ - changelog-management.md - Version tracking
@@ -0,0 +1,68 @@
1
+ # Documentation Automation
2
+
3
+ Guide to automating documentation workflows with linting, link checking, and CI/CD.
4
+
5
+ ## Link Checking
6
+
7
+ ```yaml
8
+ # .github/workflows/link-check.yml
9
+ name: Check Links
10
+ on: [pull_request]
11
+ jobs:
12
+ link-check:
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/checkout@v3
16
+ - uses: gaurav-nelson/github-action-markdown-link-check@v1
17
+ with:
18
+ config-file: '.markdown-link-check.json'
19
+ ```
20
+
21
+ ```json
22
+ // .markdown-link-check.json
23
+ {
24
+ "ignorePatterns": [
25
+ { "pattern": "^http://localhost" }
26
+ ],
27
+ "timeout": "20s",
28
+ "retryOn429": true
29
+ }
30
+ ```
31
+
32
+ ## Markdown Linting
33
+
34
+ ```yaml
35
+ # .markdownlint.json
36
+ {
37
+ "default": true,
38
+ "MD013": false,
39
+ "MD033": false
40
+ }
41
+ ```
42
+
43
+ ```bash
44
+ npx markdownlint-cli '**/*.md'
45
+ ```
46
+
47
+ ## Spell Checking
48
+
49
+ ```bash
50
+ npx cspell "docs/**/*.md"
51
+ ```
52
+
53
+ ## Auto-Generate Docs
54
+
55
+ ```typescript
56
+ // Generate API docs from code
57
+ import { generateDocs } from 'typedoc';
58
+
59
+ generateDocs({
60
+ entryPoints: ['./src/index.ts'],
61
+ out: './docs/api'
62
+ });
63
+ ```
64
+
65
+ ---
66
+
67
+ **Related Resources:**
68
+ - docs-as-code-workflow.md - Complete workflow