@build-astron-co/nimbus 0.4.2 → 0.4.3

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 (430) hide show
  1. package/dist/src/agent/compaction-agent.js +24 -12
  2. package/dist/src/agent/context-manager.js +2 -1
  3. package/dist/src/agent/expand-files.js +2 -1
  4. package/dist/src/agent/loop.js +71 -33
  5. package/dist/src/agent/permissions.js +4 -2
  6. package/dist/src/agent/system-prompt.js +34 -17
  7. package/dist/src/app.js +1 -1
  8. package/dist/src/auth/keychain.js +8 -4
  9. package/dist/src/auth/store.js +70 -107
  10. package/dist/src/cli/init.js +35 -19
  11. package/dist/src/cli/run.js +18 -10
  12. package/dist/src/cli/serve.js +4 -2
  13. package/dist/src/cli.js +52 -11
  14. package/dist/src/commands/alias.js +5 -3
  15. package/dist/src/commands/audit/index.js +2 -1
  16. package/dist/src/commands/aws-terraform.js +36 -18
  17. package/dist/src/commands/completions.js +1 -1
  18. package/dist/src/commands/config.js +3 -2
  19. package/dist/src/commands/connect-github.js +92 -0
  20. package/dist/src/commands/cost/index.js +3 -2
  21. package/dist/src/commands/deploy.js +15 -10
  22. package/dist/src/commands/doctor.js +6 -3
  23. package/dist/src/commands/drift/index.js +2 -1
  24. package/dist/src/commands/export.js +5 -3
  25. package/dist/src/commands/generate-terraform.js +110 -2
  26. package/dist/src/commands/import.js +3 -3
  27. package/dist/src/commands/incident.js +10 -5
  28. package/dist/src/commands/login.js +8 -93
  29. package/dist/src/commands/logs.js +16 -8
  30. package/dist/src/commands/onboarding.js +6 -4
  31. package/dist/src/commands/pipeline.js +6 -3
  32. package/dist/src/commands/plugin.js +3 -2
  33. package/dist/src/commands/profile.js +27 -14
  34. package/dist/src/commands/questionnaire.js +1 -1
  35. package/dist/src/commands/rollback.js +3 -2
  36. package/dist/src/commands/rollout.js +5 -3
  37. package/dist/src/commands/runbook.js +17 -10
  38. package/dist/src/commands/schedule.js +10 -5
  39. package/dist/src/commands/status.js +2 -1
  40. package/dist/src/commands/team-context.js +12 -7
  41. package/dist/src/commands/template.js +1 -1
  42. package/dist/src/commands/tf/index.js +6 -3
  43. package/dist/src/commands/version.js +6 -3
  44. package/dist/src/commands/watch.js +6 -3
  45. package/dist/src/compat/sqlite.js +5 -3
  46. package/dist/src/config/mode-store.js +2 -1
  47. package/dist/src/config/profiles.js +4 -2
  48. package/dist/src/config/types.js +2 -1
  49. package/dist/src/engine/executor.js +8 -4
  50. package/dist/src/engine/planner.js +9 -5
  51. package/dist/src/llm/providers/anthropic.js +6 -3
  52. package/dist/src/llm/providers/ollama.js +1 -1
  53. package/dist/src/llm/router.js +22 -7
  54. package/dist/src/sessions/manager.js +6 -3
  55. package/dist/src/sharing/viewer.js +2 -1
  56. package/dist/src/tools/file-ops.js +1 -2
  57. package/dist/src/tools/schemas/devops.js +197 -108
  58. package/dist/src/tools/schemas/standard.js +1 -1
  59. package/dist/src/ui/App.js +25 -13
  60. package/dist/src/ui/FileDiffModal.js +22 -11
  61. package/dist/src/ui/HelpModal.js +2 -1
  62. package/dist/src/ui/InputBox.js +6 -3
  63. package/dist/src/ui/MessageList.js +40 -20
  64. package/dist/src/ui/TerminalPane.js +2 -1
  65. package/dist/src/ui/ToolCallDisplay.js +12 -6
  66. package/dist/src/ui/TreePane.js +2 -1
  67. package/dist/src/ui/ink/index.js +37 -21
  68. package/dist/src/watcher/index.js +8 -4
  69. package/package.json +3 -5
  70. package/src/__tests__/alias.test.ts +0 -133
  71. package/src/__tests__/app.test.ts +0 -76
  72. package/src/__tests__/audit.test.ts +0 -877
  73. package/src/__tests__/circuit-breaker.test.ts +0 -116
  74. package/src/__tests__/cli-run.test.ts +0 -351
  75. package/src/__tests__/compat-sqlite.test.ts +0 -68
  76. package/src/__tests__/context-manager.test.ts +0 -632
  77. package/src/__tests__/context.test.ts +0 -242
  78. package/src/__tests__/devops-terminal-gaps.test.ts +0 -718
  79. package/src/__tests__/doctor.test.ts +0 -48
  80. package/src/__tests__/enterprise.test.ts +0 -401
  81. package/src/__tests__/export.test.ts +0 -236
  82. package/src/__tests__/gap-11-18-20.test.ts +0 -958
  83. package/src/__tests__/generator.test.ts +0 -433
  84. package/src/__tests__/helm-streaming.test.ts +0 -127
  85. package/src/__tests__/hooks.test.ts +0 -582
  86. package/src/__tests__/incident.test.ts +0 -179
  87. package/src/__tests__/init.test.ts +0 -487
  88. package/src/__tests__/intent-parser.test.ts +0 -229
  89. package/src/__tests__/llm-router.test.ts +0 -209
  90. package/src/__tests__/logs.test.ts +0 -107
  91. package/src/__tests__/loop-errors.test.ts +0 -244
  92. package/src/__tests__/lsp.test.ts +0 -293
  93. package/src/__tests__/modes.test.ts +0 -336
  94. package/src/__tests__/perf-optimizations.test.ts +0 -847
  95. package/src/__tests__/permissions.test.ts +0 -338
  96. package/src/__tests__/pipeline.test.ts +0 -50
  97. package/src/__tests__/polish-phase3.test.ts +0 -340
  98. package/src/__tests__/profile.test.ts +0 -237
  99. package/src/__tests__/rollback.test.ts +0 -83
  100. package/src/__tests__/runbook.test.ts +0 -219
  101. package/src/__tests__/schedule.test.ts +0 -206
  102. package/src/__tests__/serve.test.ts +0 -275
  103. package/src/__tests__/sessions.test.ts +0 -322
  104. package/src/__tests__/sharing.test.ts +0 -340
  105. package/src/__tests__/snapshots.test.ts +0 -581
  106. package/src/__tests__/standalone-migration.test.ts +0 -199
  107. package/src/__tests__/state-db.test.ts +0 -334
  108. package/src/__tests__/status.test.ts +0 -158
  109. package/src/__tests__/stream-with-tools.test.ts +0 -778
  110. package/src/__tests__/subagents.test.ts +0 -176
  111. package/src/__tests__/system-prompt.test.ts +0 -248
  112. package/src/__tests__/terminal-gap-v2.test.ts +0 -395
  113. package/src/__tests__/terminal-parity.test.ts +0 -393
  114. package/src/__tests__/tf-apply.test.ts +0 -187
  115. package/src/__tests__/tool-converter.test.ts +0 -256
  116. package/src/__tests__/tool-schemas.test.ts +0 -602
  117. package/src/__tests__/tools.test.ts +0 -144
  118. package/src/__tests__/version-json.test.ts +0 -184
  119. package/src/__tests__/version.test.ts +0 -49
  120. package/src/__tests__/watch.test.ts +0 -129
  121. package/src/agent/compaction-agent.ts +0 -266
  122. package/src/agent/context-manager.ts +0 -499
  123. package/src/agent/context.ts +0 -427
  124. package/src/agent/deploy-preview.ts +0 -487
  125. package/src/agent/expand-files.ts +0 -108
  126. package/src/agent/index.ts +0 -68
  127. package/src/agent/loop.ts +0 -1998
  128. package/src/agent/modes.ts +0 -429
  129. package/src/agent/permissions.ts +0 -513
  130. package/src/agent/subagents/base.ts +0 -116
  131. package/src/agent/subagents/cost.ts +0 -51
  132. package/src/agent/subagents/explore.ts +0 -42
  133. package/src/agent/subagents/general.ts +0 -54
  134. package/src/agent/subagents/index.ts +0 -102
  135. package/src/agent/subagents/infra.ts +0 -59
  136. package/src/agent/subagents/security.ts +0 -69
  137. package/src/agent/system-prompt.ts +0 -990
  138. package/src/app.ts +0 -180
  139. package/src/audit/activity-log.ts +0 -290
  140. package/src/audit/compliance-checker.ts +0 -540
  141. package/src/audit/cost-tracker.ts +0 -318
  142. package/src/audit/index.ts +0 -23
  143. package/src/audit/security-scanner.ts +0 -641
  144. package/src/auth/guard.ts +0 -75
  145. package/src/auth/index.ts +0 -56
  146. package/src/auth/keychain.ts +0 -82
  147. package/src/auth/oauth.ts +0 -465
  148. package/src/auth/providers.ts +0 -470
  149. package/src/auth/sso.ts +0 -113
  150. package/src/auth/store.ts +0 -505
  151. package/src/auth/types.ts +0 -187
  152. package/src/build.ts +0 -141
  153. package/src/cli/index.ts +0 -16
  154. package/src/cli/init.ts +0 -1227
  155. package/src/cli/openapi-spec.ts +0 -356
  156. package/src/cli/run.ts +0 -628
  157. package/src/cli/serve-auth.ts +0 -80
  158. package/src/cli/serve.ts +0 -539
  159. package/src/cli/web.ts +0 -71
  160. package/src/cli.ts +0 -1728
  161. package/src/clients/core-engine-client.ts +0 -227
  162. package/src/clients/enterprise-client.ts +0 -334
  163. package/src/clients/generator-client.ts +0 -351
  164. package/src/clients/git-client.ts +0 -627
  165. package/src/clients/github-client.ts +0 -410
  166. package/src/clients/helm-client.ts +0 -504
  167. package/src/clients/index.ts +0 -80
  168. package/src/clients/k8s-client.ts +0 -497
  169. package/src/clients/llm-client.ts +0 -161
  170. package/src/clients/rest-client.ts +0 -130
  171. package/src/clients/service-discovery.ts +0 -38
  172. package/src/clients/terraform-client.ts +0 -482
  173. package/src/clients/tools-client.ts +0 -1843
  174. package/src/clients/ws-client.ts +0 -115
  175. package/src/commands/alias.ts +0 -100
  176. package/src/commands/analyze/index.ts +0 -352
  177. package/src/commands/apply/helm.ts +0 -473
  178. package/src/commands/apply/index.ts +0 -213
  179. package/src/commands/apply/k8s.ts +0 -454
  180. package/src/commands/apply/terraform.ts +0 -582
  181. package/src/commands/ask.ts +0 -167
  182. package/src/commands/audit/index.ts +0 -357
  183. package/src/commands/auth-cloud.ts +0 -407
  184. package/src/commands/auth-list.ts +0 -134
  185. package/src/commands/auth-profile.ts +0 -121
  186. package/src/commands/auth-refresh.ts +0 -187
  187. package/src/commands/auth-status.ts +0 -141
  188. package/src/commands/aws/ec2.ts +0 -501
  189. package/src/commands/aws/iam.ts +0 -397
  190. package/src/commands/aws/index.ts +0 -133
  191. package/src/commands/aws/lambda.ts +0 -396
  192. package/src/commands/aws/rds.ts +0 -439
  193. package/src/commands/aws/s3.ts +0 -439
  194. package/src/commands/aws/vpc.ts +0 -393
  195. package/src/commands/aws-discover.ts +0 -542
  196. package/src/commands/aws-terraform.ts +0 -755
  197. package/src/commands/azure/aks.ts +0 -376
  198. package/src/commands/azure/functions.ts +0 -253
  199. package/src/commands/azure/index.ts +0 -116
  200. package/src/commands/azure/storage.ts +0 -478
  201. package/src/commands/azure/vm.ts +0 -355
  202. package/src/commands/billing/index.ts +0 -256
  203. package/src/commands/chat.ts +0 -320
  204. package/src/commands/completions.ts +0 -268
  205. package/src/commands/config.ts +0 -372
  206. package/src/commands/cost/cloud-cost-estimator.ts +0 -266
  207. package/src/commands/cost/estimator.ts +0 -79
  208. package/src/commands/cost/index.ts +0 -810
  209. package/src/commands/cost/parsers/terraform.ts +0 -273
  210. package/src/commands/cost/parsers/types.ts +0 -25
  211. package/src/commands/cost/pricing/aws.ts +0 -544
  212. package/src/commands/cost/pricing/azure.ts +0 -499
  213. package/src/commands/cost/pricing/gcp.ts +0 -396
  214. package/src/commands/cost/pricing/index.ts +0 -40
  215. package/src/commands/demo.ts +0 -250
  216. package/src/commands/deploy.ts +0 -260
  217. package/src/commands/doctor.ts +0 -1386
  218. package/src/commands/drift/index.ts +0 -787
  219. package/src/commands/explain.ts +0 -277
  220. package/src/commands/export.ts +0 -146
  221. package/src/commands/feedback.ts +0 -389
  222. package/src/commands/fix.ts +0 -324
  223. package/src/commands/fs/index.ts +0 -402
  224. package/src/commands/gcp/compute.ts +0 -325
  225. package/src/commands/gcp/functions.ts +0 -271
  226. package/src/commands/gcp/gke.ts +0 -438
  227. package/src/commands/gcp/iam.ts +0 -344
  228. package/src/commands/gcp/index.ts +0 -129
  229. package/src/commands/gcp/storage.ts +0 -284
  230. package/src/commands/generate-helm.ts +0 -1249
  231. package/src/commands/generate-k8s.ts +0 -1508
  232. package/src/commands/generate-terraform.ts +0 -1202
  233. package/src/commands/gh/index.ts +0 -863
  234. package/src/commands/git/index.ts +0 -1343
  235. package/src/commands/helm/index.ts +0 -1126
  236. package/src/commands/help.ts +0 -715
  237. package/src/commands/history.ts +0 -149
  238. package/src/commands/import.ts +0 -868
  239. package/src/commands/incident.ts +0 -166
  240. package/src/commands/index.ts +0 -367
  241. package/src/commands/init.ts +0 -1051
  242. package/src/commands/k8s/index.ts +0 -1137
  243. package/src/commands/login.ts +0 -716
  244. package/src/commands/logout.ts +0 -83
  245. package/src/commands/logs.ts +0 -167
  246. package/src/commands/onboarding.ts +0 -405
  247. package/src/commands/pipeline.ts +0 -186
  248. package/src/commands/plan/display.ts +0 -279
  249. package/src/commands/plan/index.ts +0 -599
  250. package/src/commands/plugin.ts +0 -398
  251. package/src/commands/preview.ts +0 -452
  252. package/src/commands/profile.ts +0 -342
  253. package/src/commands/questionnaire.ts +0 -1172
  254. package/src/commands/resume.ts +0 -47
  255. package/src/commands/rollback.ts +0 -315
  256. package/src/commands/rollout.ts +0 -88
  257. package/src/commands/runbook.ts +0 -346
  258. package/src/commands/schedule.ts +0 -236
  259. package/src/commands/status.ts +0 -252
  260. package/src/commands/team/index.ts +0 -346
  261. package/src/commands/team-context.ts +0 -220
  262. package/src/commands/template.ts +0 -233
  263. package/src/commands/tf/index.ts +0 -1093
  264. package/src/commands/upgrade.ts +0 -609
  265. package/src/commands/usage/index.ts +0 -134
  266. package/src/commands/version.ts +0 -174
  267. package/src/commands/watch.ts +0 -153
  268. package/src/compat/index.ts +0 -2
  269. package/src/compat/runtime.ts +0 -12
  270. package/src/compat/sqlite.ts +0 -177
  271. package/src/config/index.ts +0 -17
  272. package/src/config/manager.ts +0 -530
  273. package/src/config/mode-store.ts +0 -62
  274. package/src/config/profiles.ts +0 -84
  275. package/src/config/safety-policy.ts +0 -358
  276. package/src/config/schema.ts +0 -125
  277. package/src/config/types.ts +0 -609
  278. package/src/config/workspace-state.ts +0 -53
  279. package/src/context/context-db.ts +0 -199
  280. package/src/demo/index.ts +0 -349
  281. package/src/demo/scenarios/full-journey.ts +0 -229
  282. package/src/demo/scenarios/getting-started.ts +0 -127
  283. package/src/demo/scenarios/helm-release.ts +0 -341
  284. package/src/demo/scenarios/k8s-deployment.ts +0 -194
  285. package/src/demo/scenarios/terraform-vpc.ts +0 -170
  286. package/src/demo/types.ts +0 -92
  287. package/src/engine/cost-estimator.ts +0 -480
  288. package/src/engine/diagram-generator.ts +0 -256
  289. package/src/engine/drift-detector.ts +0 -902
  290. package/src/engine/executor.ts +0 -1066
  291. package/src/engine/index.ts +0 -76
  292. package/src/engine/orchestrator.ts +0 -636
  293. package/src/engine/planner.ts +0 -787
  294. package/src/engine/safety.ts +0 -743
  295. package/src/engine/verifier.ts +0 -770
  296. package/src/enterprise/audit.ts +0 -348
  297. package/src/enterprise/auth.ts +0 -270
  298. package/src/enterprise/billing.ts +0 -822
  299. package/src/enterprise/index.ts +0 -17
  300. package/src/enterprise/teams.ts +0 -443
  301. package/src/generator/best-practices.ts +0 -1608
  302. package/src/generator/helm.ts +0 -630
  303. package/src/generator/index.ts +0 -37
  304. package/src/generator/intent-parser.ts +0 -514
  305. package/src/generator/kubernetes.ts +0 -976
  306. package/src/generator/terraform.ts +0 -1875
  307. package/src/history/index.ts +0 -8
  308. package/src/history/manager.ts +0 -250
  309. package/src/history/types.ts +0 -34
  310. package/src/hooks/config.ts +0 -432
  311. package/src/hooks/engine.ts +0 -392
  312. package/src/hooks/index.ts +0 -4
  313. package/src/llm/auth-bridge.ts +0 -198
  314. package/src/llm/circuit-breaker.ts +0 -140
  315. package/src/llm/config-loader.ts +0 -201
  316. package/src/llm/cost-calculator.ts +0 -171
  317. package/src/llm/index.ts +0 -8
  318. package/src/llm/model-aliases.ts +0 -115
  319. package/src/llm/provider-registry.ts +0 -63
  320. package/src/llm/providers/anthropic.ts +0 -462
  321. package/src/llm/providers/bedrock.ts +0 -477
  322. package/src/llm/providers/google.ts +0 -405
  323. package/src/llm/providers/ollama.ts +0 -767
  324. package/src/llm/providers/openai-compatible.ts +0 -340
  325. package/src/llm/providers/openai.ts +0 -328
  326. package/src/llm/providers/openrouter.ts +0 -338
  327. package/src/llm/router.ts +0 -1104
  328. package/src/llm/types.ts +0 -232
  329. package/src/lsp/client.ts +0 -298
  330. package/src/lsp/languages.ts +0 -119
  331. package/src/lsp/manager.ts +0 -294
  332. package/src/mcp/client.ts +0 -402
  333. package/src/mcp/index.ts +0 -5
  334. package/src/mcp/manager.ts +0 -133
  335. package/src/nimbus.ts +0 -234
  336. package/src/plugins/index.ts +0 -27
  337. package/src/plugins/loader.ts +0 -334
  338. package/src/plugins/manager.ts +0 -376
  339. package/src/plugins/types.ts +0 -284
  340. package/src/scanners/cicd-scanner.ts +0 -258
  341. package/src/scanners/cloud-scanner.ts +0 -466
  342. package/src/scanners/framework-scanner.ts +0 -469
  343. package/src/scanners/iac-scanner.ts +0 -388
  344. package/src/scanners/index.ts +0 -539
  345. package/src/scanners/language-scanner.ts +0 -276
  346. package/src/scanners/package-manager-scanner.ts +0 -277
  347. package/src/scanners/types.ts +0 -172
  348. package/src/sessions/manager.ts +0 -472
  349. package/src/sessions/types.ts +0 -44
  350. package/src/sharing/sync.ts +0 -300
  351. package/src/sharing/viewer.ts +0 -163
  352. package/src/snapshots/index.ts +0 -2
  353. package/src/snapshots/manager.ts +0 -530
  354. package/src/state/artifacts.ts +0 -147
  355. package/src/state/audit.ts +0 -137
  356. package/src/state/billing.ts +0 -240
  357. package/src/state/checkpoints.ts +0 -117
  358. package/src/state/config.ts +0 -67
  359. package/src/state/conversations.ts +0 -14
  360. package/src/state/credentials.ts +0 -154
  361. package/src/state/db.ts +0 -58
  362. package/src/state/index.ts +0 -26
  363. package/src/state/messages.ts +0 -115
  364. package/src/state/projects.ts +0 -123
  365. package/src/state/schema.ts +0 -236
  366. package/src/state/sessions.ts +0 -147
  367. package/src/state/teams.ts +0 -200
  368. package/src/telemetry.ts +0 -108
  369. package/src/tools/aws-ops.ts +0 -952
  370. package/src/tools/azure-ops.ts +0 -579
  371. package/src/tools/file-ops.ts +0 -615
  372. package/src/tools/gcp-ops.ts +0 -625
  373. package/src/tools/git-ops.ts +0 -773
  374. package/src/tools/github-ops.ts +0 -799
  375. package/src/tools/helm-ops.ts +0 -943
  376. package/src/tools/index.ts +0 -17
  377. package/src/tools/k8s-ops.ts +0 -819
  378. package/src/tools/schemas/converter.ts +0 -184
  379. package/src/tools/schemas/devops.ts +0 -3502
  380. package/src/tools/schemas/index.ts +0 -73
  381. package/src/tools/schemas/standard.ts +0 -1148
  382. package/src/tools/schemas/types.ts +0 -735
  383. package/src/tools/spawn-exec.ts +0 -148
  384. package/src/tools/terraform-ops.ts +0 -862
  385. package/src/types/ambient.d.ts +0 -193
  386. package/src/types/config.ts +0 -83
  387. package/src/types/drift.ts +0 -116
  388. package/src/types/enterprise.ts +0 -335
  389. package/src/types/index.ts +0 -20
  390. package/src/types/plan.ts +0 -44
  391. package/src/types/request.ts +0 -65
  392. package/src/types/response.ts +0 -54
  393. package/src/types/service.ts +0 -51
  394. package/src/ui/App.tsx +0 -2114
  395. package/src/ui/DeployPreview.tsx +0 -174
  396. package/src/ui/FileDiffModal.tsx +0 -162
  397. package/src/ui/Header.tsx +0 -131
  398. package/src/ui/HelpModal.tsx +0 -57
  399. package/src/ui/InputBox.tsx +0 -503
  400. package/src/ui/MessageList.tsx +0 -1032
  401. package/src/ui/PermissionPrompt.tsx +0 -163
  402. package/src/ui/StatusBar.tsx +0 -277
  403. package/src/ui/TerminalPane.tsx +0 -84
  404. package/src/ui/ToolCallDisplay.tsx +0 -643
  405. package/src/ui/TreePane.tsx +0 -132
  406. package/src/ui/chat-ui.ts +0 -850
  407. package/src/ui/index.ts +0 -33
  408. package/src/ui/ink/index.ts +0 -1444
  409. package/src/ui/streaming.ts +0 -176
  410. package/src/ui/theme.ts +0 -104
  411. package/src/ui/types.ts +0 -75
  412. package/src/utils/analytics.ts +0 -72
  413. package/src/utils/cost-warning.ts +0 -27
  414. package/src/utils/env.ts +0 -46
  415. package/src/utils/errors.ts +0 -69
  416. package/src/utils/event-bus.ts +0 -38
  417. package/src/utils/index.ts +0 -24
  418. package/src/utils/logger.ts +0 -171
  419. package/src/utils/rate-limiter.ts +0 -121
  420. package/src/utils/service-auth.ts +0 -49
  421. package/src/utils/validation.ts +0 -53
  422. package/src/version.ts +0 -4
  423. package/src/watcher/index.ts +0 -214
  424. package/src/wizard/approval.ts +0 -383
  425. package/src/wizard/index.ts +0 -25
  426. package/src/wizard/prompts.ts +0 -338
  427. package/src/wizard/types.ts +0 -172
  428. package/src/wizard/ui.ts +0 -556
  429. package/src/wizard/wizard.ts +0 -304
  430. package/tsconfig.json +0 -24
@@ -1,229 +0,0 @@
1
- /**
2
- * Full Journey Demo Scenario
3
- *
4
- * End-to-end demo from discovery to deployment
5
- */
6
-
7
- import type { DemoScenario } from '../types';
8
-
9
- export const fullJourneyScenario: DemoScenario = {
10
- id: 'full-journey',
11
- name: 'Full Infrastructure Journey',
12
- description: 'Complete workflow: Discovery → Generation → Preview → Deploy',
13
- category: 'full-journey',
14
- duration: 15,
15
- prerequisites: [
16
- 'AWS CLI configured with credentials',
17
- 'Terraform installed (v1.0+)',
18
- 'kubectl configured (for K8s steps)',
19
- 'Nimbus CLI installed',
20
- ],
21
- tags: ['full-demo', 'aws', 'terraform', 'kubernetes'],
22
- steps: [
23
- {
24
- id: 'init',
25
- title: 'Initialize Nimbus Project',
26
- description: 'Set up Nimbus in the current project',
27
- command: 'nimbus init',
28
- showOutput: true,
29
- waitForInput: true,
30
- mockResponse: `
31
- Nimbus Initialization
32
-
33
- Scanning project...
34
-
35
- Detected:
36
- ✓ Languages: TypeScript, Python
37
- ✓ Frameworks: Next.js, FastAPI
38
- ✓ Package Managers: npm, pip
39
- ✓ IaC: Terraform
40
- ✓ CI/CD: GitHub Actions
41
- ✓ Cloud: AWS
42
-
43
- Created .nimbus/project.yaml
44
-
45
- Project initialized successfully!
46
- `.trim(),
47
- },
48
- {
49
- id: 'discover-aws',
50
- title: 'Discover AWS Resources',
51
- description: 'Scan your AWS account for existing infrastructure',
52
- command: 'nimbus aws discover --regions us-east-1',
53
- showOutput: true,
54
- waitForInput: true,
55
- mockResponse: `
56
- AWS Discovery
57
-
58
- Scanning AWS account...
59
- Region: us-east-1
60
-
61
- Discovery Summary:
62
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
63
- EC2 Instances: 3
64
- VPCs: 2
65
- S3 Buckets: 5
66
- RDS Instances: 1
67
- Lambda Functions: 8
68
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
69
-
70
- Resources discovered and saved to .nimbus/inventory.yaml
71
- `.trim(),
72
- },
73
- {
74
- id: 'generate-terraform',
75
- title: 'Generate Terraform from Inventory',
76
- description: 'Create Terraform code from discovered resources',
77
- command: 'nimbus generate terraform --from-inventory',
78
- showOutput: true,
79
- waitForInput: true,
80
- mockResponse: `
81
- Generate Terraform
82
-
83
- Generating from .nimbus/inventory.yaml...
84
-
85
- Generated files:
86
- ● terraform/main.tf
87
- ● terraform/vpc.tf
88
- ● terraform/ec2.tf
89
- ● terraform/rds.tf
90
- ● terraform/s3.tf
91
- ● terraform/variables.tf
92
- ● terraform/outputs.tf
93
-
94
- Output directory: ./terraform
95
-
96
- Generation complete!
97
- Run 'nimbus preview terraform' to see the plan.
98
- `.trim(),
99
- },
100
- {
101
- id: 'preview',
102
- title: 'Preview Infrastructure Changes',
103
- description: 'Review what will be created/modified',
104
- command: 'nimbus preview terraform ./terraform',
105
- showOutput: true,
106
- waitForInput: true,
107
- mockResponse: `
108
- Preview Terraform Changes
109
-
110
- Directory: ./terraform
111
-
112
- Creating execution plan...
113
- Plan created
114
-
115
- Plan Summary:
116
-
117
- + 12 to add
118
- ~ 0 to change
119
- - 0 to destroy
120
-
121
- Resources to be created:
122
- + aws_vpc.main
123
- + aws_subnet.private[0-2]
124
- + aws_subnet.public[0-2]
125
- + aws_security_group.main
126
- + aws_instance.app
127
- + aws_db_instance.main
128
- + aws_s3_bucket.assets
129
-
130
- Safety Check Summary:
131
-
132
- 🟡 [MEDIUM] This operation will modify infrastructure
133
-
134
- All safety checks passed
135
- `.trim(),
136
- },
137
- {
138
- id: 'apply',
139
- title: 'Apply Infrastructure',
140
- description: 'Deploy the infrastructure with safety approval',
141
- command: 'nimbus apply terraform ./terraform',
142
- showOutput: true,
143
- waitForInput: true,
144
- mockResponse: `
145
- Terraform Apply
146
-
147
- Creating execution plan...
148
- Plan created
149
-
150
- ╔══════════════════════════════════════════════════════════╗
151
- ║ APPROVAL REQUIRED ║
152
- ╠══════════════════════════════════════════════════════════╣
153
- ║ Operation: terraform apply ║
154
- ╚══════════════════════════════════════════════════════════╝
155
-
156
- Identified Risks:
157
- 🟡 [MEDIUM] This operation will modify infrastructure
158
-
159
- Do you want to proceed? Yes
160
-
161
- Applying changes...
162
-
163
- Apply complete! Resources: 12 added, 0 changed, 0 destroyed.
164
- `.trim(),
165
- },
166
- {
167
- id: 'generate-k8s',
168
- title: 'Generate Kubernetes Manifests',
169
- description: 'Create K8s deployment for the application',
170
- command: 'nimbus questionnaire kubernetes',
171
- showOutput: true,
172
- waitForInput: true,
173
- mockResponse: `
174
- Kubernetes Configuration Wizard
175
-
176
- Step 1/4: Application Info
177
- Name: my-app
178
- Image: my-registry/my-app:latest
179
-
180
- Step 2/4: Deployment Settings
181
- Replicas: 3
182
- Port: 8080
183
-
184
- Step 3/4: Resource Limits
185
- CPU Request: 100m
186
- Memory Request: 128Mi
187
-
188
- Step 4/4: Service Configuration
189
- Type: ClusterIP
190
- Port: 80
191
-
192
- Generated files:
193
- ● k8s/deployment.yaml
194
- ● k8s/service.yaml
195
-
196
- Output directory: ./k8s
197
- `.trim(),
198
- },
199
- {
200
- id: 'deploy-k8s',
201
- title: 'Deploy to Kubernetes',
202
- description: 'Apply K8s manifests to the cluster',
203
- command: 'nimbus apply k8s ./k8s',
204
- showOutput: true,
205
- waitForInput: false,
206
- mockResponse: `
207
- Kubernetes Apply
208
-
209
- Manifests: ./k8s
210
- Namespace: default
211
-
212
- Found 2 manifest file(s)
213
-
214
- Resources to apply:
215
- - Deployment/my-app
216
- - Service/my-app
217
-
218
- Apply 2 resource(s)? Yes
219
-
220
- Applying manifests...
221
- Apply complete!
222
-
223
- Created:
224
- + Deployment/my-app
225
- + Service/my-app
226
- `.trim(),
227
- },
228
- ],
229
- };
@@ -1,127 +0,0 @@
1
- /**
2
- * Getting Started Tutorial
3
- *
4
- * Interactive tutorial for new Nimbus users
5
- */
6
-
7
- import type { DemoScenario } from '../types';
8
-
9
- export const gettingStartedScenario: DemoScenario = {
10
- id: 'getting-started',
11
- name: 'Getting Started with Nimbus',
12
- description: 'Learn the basics of Nimbus CLI in this interactive tutorial',
13
- category: 'tutorial',
14
- duration: 5,
15
- prerequisites: ['Nimbus CLI installed'],
16
- tags: ['tutorial', 'beginner', 'basics'],
17
- steps: [
18
- {
19
- id: 'check-version',
20
- title: 'Check Nimbus Version',
21
- description: "First, let's make sure Nimbus is installed correctly",
22
- command: 'nimbus --version',
23
- showOutput: true,
24
- waitForInput: true,
25
- mockResponse: 'nimbus version 1.0.0',
26
- },
27
- {
28
- id: 'help',
29
- title: 'View Available Commands',
30
- description: "Nimbus has many commands - let's see what's available",
31
- command: 'nimbus --help',
32
- showOutput: true,
33
- waitForInput: true,
34
- mockResponse: `
35
- Nimbus CLI - AI-powered infrastructure assistant
36
-
37
- USAGE:
38
- nimbus <command> [options]
39
-
40
- COMMANDS:
41
- init Initialize Nimbus in the current project
42
- chat Start an interactive chat session
43
- generate Generate infrastructure code
44
- apply Apply infrastructure changes
45
- preview Preview changes without applying
46
- aws AWS CLI commands
47
- tf Terraform commands
48
- k8s Kubernetes commands
49
- helm Helm commands
50
-
51
- FLAGS:
52
- --version Show version
53
- --help Show help
54
- `.trim(),
55
- },
56
- {
57
- id: 'doctor',
58
- title: 'Run System Check',
59
- description: 'Check that all required tools are installed',
60
- command: 'nimbus doctor',
61
- showOutput: true,
62
- waitForInput: true,
63
- mockResponse: `
64
- Nimbus Doctor
65
-
66
- Checking system requirements...
67
-
68
- ✓ Node.js 18.0.0
69
- ✓ Bun 1.0.0
70
- ✓ Git 2.40.0
71
- ✓ Terraform 1.5.0
72
- ✓ kubectl 1.28.0
73
- ✓ Helm 3.12.0
74
- ✓ AWS CLI 2.13.0
75
-
76
- All checks passed!
77
- `.trim(),
78
- },
79
- {
80
- id: 'init-demo',
81
- title: 'Initialize a Project',
82
- description: 'Set up Nimbus in any directory to get started',
83
- command: 'nimbus init --scan-depth quick',
84
- showOutput: true,
85
- waitForInput: true,
86
- mockResponse: `
87
- Nimbus Initialization
88
-
89
- Scanning project (quick mode)...
90
-
91
- Project Summary:
92
- Type: unknown
93
- Languages: none detected
94
-
95
- Created .nimbus/project.yaml
96
- Created .nimbus/config.yaml
97
-
98
- Project initialized!
99
-
100
- Next steps:
101
- 1. Run 'nimbus chat' to get AI assistance
102
- 2. Run 'nimbus generate terraform' to create infrastructure
103
- 3. Run 'nimbus aws discover' to scan your AWS account
104
- `.trim(),
105
- },
106
- {
107
- id: 'config-list',
108
- title: 'View Configuration',
109
- description: 'See your current Nimbus configuration',
110
- command: 'nimbus config list',
111
- showOutput: true,
112
- waitForInput: false,
113
- mockResponse: `
114
- Nimbus Configuration
115
-
116
- Key Value
117
- ─────────────────────────────────────────
118
- llm.provider anthropic
119
- llm.model claude-3-sonnet
120
- safety.enabled true
121
- safety.costThreshold 500
122
- output.format table
123
- output.colors true
124
- `.trim(),
125
- },
126
- ],
127
- };
@@ -1,341 +0,0 @@
1
- /**
2
- * Helm Release Demo Scenario
3
- *
4
- * Demonstrates creating and deploying a Helm chart
5
- */
6
-
7
- import type { DemoScenario } from '../types';
8
-
9
- export const helmReleaseScenario: DemoScenario = {
10
- id: 'helm-release',
11
- name: 'Create and Deploy Helm Chart',
12
- description: 'Learn how to create and deploy Helm charts with Nimbus',
13
- category: 'helm',
14
- duration: 15,
15
- prerequisites: [
16
- 'Helm 3.x installed',
17
- 'kubectl configured with cluster access',
18
- 'Nimbus CLI installed',
19
- ],
20
- tags: ['helm', 'charts', 'deployment', 'kubernetes'],
21
- steps: [
22
- {
23
- id: 'check-helm',
24
- title: 'Verify Helm Installation',
25
- description: 'Check that Helm is installed and configured',
26
- command: 'nimbus helm version',
27
- showOutput: true,
28
- waitForInput: true,
29
- mockResponse: `
30
- Helm Version: v3.14.0
31
- Kubernetes Version: v1.28.0
32
- `.trim(),
33
- },
34
- {
35
- id: 'generate-chart',
36
- title: 'Generate Helm Chart',
37
- description: 'Create a new Helm chart for a web application',
38
- command: 'nimbus generate helm --name my-webapp --type web --output ./charts',
39
- showOutput: true,
40
- waitForInput: true,
41
- mockResponse: `
42
- Generating Helm chart...
43
-
44
- Created chart: my-webapp
45
-
46
- charts/my-webapp/
47
- ├── Chart.yaml # Chart metadata
48
- ├── values.yaml # Default values
49
- ├── templates/
50
- │ ├── _helpers.tpl # Template helpers
51
- │ ├── deployment.yaml # Deployment template
52
- │ ├── service.yaml # Service template
53
- │ ├── ingress.yaml # Ingress template
54
- │ ├── configmap.yaml # ConfigMap template
55
- │ ├── hpa.yaml # HPA template
56
- │ └── NOTES.txt # Post-install notes
57
- └── .helmignore # Files to ignore
58
-
59
- Chart type: Web Application
60
- Features:
61
- ✓ Deployment with health checks
62
- ✓ Service (ClusterIP/LoadBalancer)
63
- ✓ Ingress with TLS support
64
- ✓ ConfigMap for environment
65
- ✓ Horizontal Pod Autoscaler
66
-
67
- Generated successfully!
68
- `.trim(),
69
- },
70
- {
71
- id: 'review-chart',
72
- title: 'Review Chart Configuration',
73
- description: 'Examine the generated Chart.yaml and values.yaml',
74
- command: 'nimbus explain helm charts/my-webapp',
75
- showOutput: true,
76
- waitForInput: true,
77
- mockResponse: `
78
- Chart: my-webapp
79
-
80
- Chart.yaml:
81
- name: my-webapp
82
- version: 0.1.0
83
- appVersion: "1.0.0"
84
- description: A Helm chart for a web application
85
- type: application
86
-
87
- values.yaml (key configurations):
88
-
89
- replicaCount: 2
90
-
91
- image:
92
- repository: nginx
93
- tag: "latest"
94
- pullPolicy: IfNotPresent
95
-
96
- service:
97
- type: ClusterIP
98
- port: 80
99
-
100
- ingress:
101
- enabled: false
102
- className: "nginx"
103
- hosts:
104
- - host: my-webapp.local
105
- paths:
106
- - path: /
107
- pathType: Prefix
108
-
109
- resources:
110
- limits:
111
- cpu: 500m
112
- memory: 512Mi
113
- requests:
114
- cpu: 100m
115
- memory: 128Mi
116
-
117
- autoscaling:
118
- enabled: true
119
- minReplicas: 2
120
- maxReplicas: 10
121
- targetCPUUtilization: 70
122
-
123
- This chart follows Helm best practices with
124
- configurable replicas, resources, and scaling.
125
- `.trim(),
126
- },
127
- {
128
- id: 'lint-chart',
129
- title: 'Lint the Chart',
130
- description: 'Validate the chart structure and templates',
131
- command: 'nimbus helm lint charts/my-webapp',
132
- showOutput: true,
133
- waitForInput: true,
134
- mockResponse: `
135
- ==> Linting charts/my-webapp
136
-
137
- [INFO] Chart.yaml: icon is recommended
138
-
139
- 1 chart(s) linted, 0 chart(s) failed
140
-
141
- Lint Summary:
142
- ✓ Chart.yaml valid
143
- ✓ values.yaml valid
144
- ✓ Templates compile correctly
145
- ✓ Required files present
146
-
147
- Chart is ready for deployment!
148
- `.trim(),
149
- },
150
- {
151
- id: 'template-preview',
152
- title: 'Preview Rendered Templates',
153
- description: 'See what the chart will generate when installed',
154
- command:
155
- 'nimbus helm template my-webapp charts/my-webapp --values charts/my-webapp/values.yaml | head -50',
156
- showOutput: true,
157
- waitForInput: true,
158
- mockResponse: `
159
- ---
160
- # Source: my-webapp/templates/configmap.yaml
161
- apiVersion: v1
162
- kind: ConfigMap
163
- metadata:
164
- name: my-webapp-config
165
- labels:
166
- app.kubernetes.io/name: my-webapp
167
- app.kubernetes.io/instance: my-webapp
168
- data:
169
- APP_ENV: "production"
170
- ---
171
- # Source: my-webapp/templates/service.yaml
172
- apiVersion: v1
173
- kind: Service
174
- metadata:
175
- name: my-webapp
176
- labels:
177
- app.kubernetes.io/name: my-webapp
178
- spec:
179
- type: ClusterIP
180
- ports:
181
- - port: 80
182
- targetPort: http
183
- protocol: TCP
184
- name: http
185
- selector:
186
- app.kubernetes.io/name: my-webapp
187
- ---
188
- # Source: my-webapp/templates/deployment.yaml
189
- apiVersion: apps/v1
190
- kind: Deployment
191
- metadata:
192
- name: my-webapp
193
- labels:
194
- app.kubernetes.io/name: my-webapp
195
- spec:
196
- replicas: 2
197
- selector:
198
- matchLabels:
199
- app.kubernetes.io/name: my-webapp
200
- template:
201
- ...
202
- `.trim(),
203
- },
204
- {
205
- id: 'install-release',
206
- title: 'Install Helm Release (Dry Run)',
207
- description: 'Deploy the chart to Kubernetes (dry run mode)',
208
- command:
209
- 'nimbus apply helm --release my-webapp --chart charts/my-webapp --namespace demo --dry-run',
210
- showOutput: true,
211
- waitForInput: true,
212
- mockResponse: `
213
- Dry Run - Helm Install
214
-
215
- Release: my-webapp
216
- Namespace: demo
217
- Chart: charts/my-webapp (0.1.0)
218
-
219
- Resources to be created:
220
- ✓ ConfigMap/my-webapp-config
221
- ✓ Service/my-webapp
222
- ✓ Deployment/my-webapp
223
- ✓ HorizontalPodAutoscaler/my-webapp
224
-
225
- Computed Values:
226
- replicaCount: 2
227
- image.repository: nginx
228
- image.tag: latest
229
- service.type: ClusterIP
230
-
231
- No resources were created (dry run mode)
232
-
233
- To install for real, remove --dry-run flag
234
- `.trim(),
235
- },
236
- {
237
- id: 'install-actual',
238
- title: 'Install Helm Release',
239
- description: 'Actually deploy the chart to the cluster',
240
- command:
241
- 'nimbus apply helm --release my-webapp --chart charts/my-webapp --namespace demo --create-namespace',
242
- showOutput: true,
243
- waitForInput: true,
244
- mockResponse: `
245
- Installing Helm release...
246
-
247
- NAME: my-webapp
248
- NAMESPACE: demo
249
- STATUS: deployed
250
- REVISION: 1
251
-
252
- Resources:
253
- ✓ ConfigMap/my-webapp-config created
254
- ✓ Service/my-webapp created
255
- ✓ Deployment/my-webapp created
256
- ✓ HorizontalPodAutoscaler/my-webapp created
257
-
258
- Waiting for deployment...
259
- Pods: 2/2 ready
260
-
261
- NOTES:
262
- Thank you for installing my-webapp!
263
-
264
- To access the application:
265
- kubectl port-forward svc/my-webapp 8080:80 -n demo
266
- Then visit: http://localhost:8080
267
-
268
- Installation complete!
269
- `.trim(),
270
- },
271
- {
272
- id: 'list-releases',
273
- title: 'List Helm Releases',
274
- description: 'View all deployed Helm releases',
275
- command: 'nimbus helm list --namespace demo',
276
- showOutput: true,
277
- waitForInput: true,
278
- mockResponse: `
279
- NAME NAMESPACE REVISION STATUS CHART APP VERSION
280
- my-webapp demo 1 deployed my-webapp-0.1.0 1.0.0
281
- `.trim(),
282
- },
283
- {
284
- id: 'upgrade-release',
285
- title: 'Upgrade Release',
286
- description: 'Upgrade the release with new values',
287
- command:
288
- 'nimbus helm upgrade my-webapp charts/my-webapp --namespace demo --set replicaCount=3',
289
- showOutput: true,
290
- waitForInput: true,
291
- mockResponse: `
292
- Upgrading Helm release...
293
-
294
- Release "my-webapp" has been upgraded.
295
- REVISION: 2
296
-
297
- Changes:
298
- - replicaCount: 2 -> 3
299
-
300
- Waiting for rollout...
301
- Deployment updated: 3/3 replicas ready
302
-
303
- Upgrade complete!
304
- `.trim(),
305
- },
306
- {
307
- id: 'history',
308
- title: 'View Release History',
309
- description: 'See the revision history of the release',
310
- command: 'nimbus helm history my-webapp --namespace demo',
311
- showOutput: true,
312
- waitForInput: true,
313
- mockResponse: `
314
- REVISION STATUS DESCRIPTION
315
- 1 superseded Install complete
316
- 2 deployed Upgrade complete
317
- `.trim(),
318
- },
319
- {
320
- id: 'cleanup',
321
- title: 'Uninstall Release',
322
- description: 'Remove the Helm release (optional)',
323
- command: 'nimbus helm uninstall my-webapp --namespace demo',
324
- showOutput: true,
325
- waitForInput: false,
326
- mockResponse: `
327
- Uninstalling release...
328
-
329
- release "my-webapp" uninstalled
330
-
331
- All resources removed:
332
- - ConfigMap/my-webapp-config
333
- - Service/my-webapp
334
- - Deployment/my-webapp
335
- - HorizontalPodAutoscaler/my-webapp
336
-
337
- Cleanup complete!
338
- `.trim(),
339
- },
340
- ],
341
- };