language-operator 0.1.61 → 0.1.62

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 (143) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/commands/persona.md +9 -0
  3. data/.claude/commands/task.md +46 -1
  4. data/.rubocop.yml +13 -0
  5. data/.rubocop_custom/use_ux_helper.rb +44 -0
  6. data/CHANGELOG.md +8 -0
  7. data/Gemfile.lock +12 -1
  8. data/Makefile +26 -7
  9. data/Makefile.common +50 -0
  10. data/bin/aictl +8 -1
  11. data/components/agent/Gemfile +1 -1
  12. data/components/agent/bin/langop-agent +7 -0
  13. data/docs/README.md +58 -0
  14. data/docs/{dsl/best-practices.md → best-practices.md} +4 -4
  15. data/docs/cli-reference.md +274 -0
  16. data/docs/{dsl/constraints.md → constraints.md} +5 -5
  17. data/docs/how-agents-work.md +156 -0
  18. data/docs/installation.md +218 -0
  19. data/docs/quickstart.md +299 -0
  20. data/docs/understanding-generated-code.md +265 -0
  21. data/docs/using-tools.md +457 -0
  22. data/docs/webhooks.md +509 -0
  23. data/examples/ux_helpers_demo.rb +296 -0
  24. data/lib/language_operator/agent/base.rb +11 -1
  25. data/lib/language_operator/agent/executor.rb +23 -6
  26. data/lib/language_operator/agent/safety/safe_executor.rb +41 -39
  27. data/lib/language_operator/agent/task_executor.rb +346 -63
  28. data/lib/language_operator/agent/web_server.rb +110 -14
  29. data/lib/language_operator/agent/webhook_authenticator.rb +39 -5
  30. data/lib/language_operator/agent.rb +88 -2
  31. data/lib/language_operator/cli/base_command.rb +17 -11
  32. data/lib/language_operator/cli/command_loader.rb +72 -0
  33. data/lib/language_operator/cli/commands/agent/base.rb +837 -0
  34. data/lib/language_operator/cli/commands/agent/code_operations.rb +102 -0
  35. data/lib/language_operator/cli/commands/agent/helpers/cluster_llm_client.rb +116 -0
  36. data/lib/language_operator/cli/commands/agent/helpers/code_parser.rb +115 -0
  37. data/lib/language_operator/cli/commands/agent/helpers/synthesis_watcher.rb +96 -0
  38. data/lib/language_operator/cli/commands/agent/learning.rb +289 -0
  39. data/lib/language_operator/cli/commands/agent/lifecycle.rb +102 -0
  40. data/lib/language_operator/cli/commands/agent/logs.rb +125 -0
  41. data/lib/language_operator/cli/commands/agent/workspace.rb +327 -0
  42. data/lib/language_operator/cli/commands/cluster.rb +129 -84
  43. data/lib/language_operator/cli/commands/install.rb +1 -1
  44. data/lib/language_operator/cli/commands/model/base.rb +215 -0
  45. data/lib/language_operator/cli/commands/model/test.rb +165 -0
  46. data/lib/language_operator/cli/commands/persona.rb +16 -34
  47. data/lib/language_operator/cli/commands/quickstart.rb +3 -2
  48. data/lib/language_operator/cli/commands/status.rb +40 -67
  49. data/lib/language_operator/cli/commands/system/base.rb +44 -0
  50. data/lib/language_operator/cli/commands/system/exec.rb +147 -0
  51. data/lib/language_operator/cli/commands/system/helpers/llm_synthesis.rb +183 -0
  52. data/lib/language_operator/cli/commands/system/helpers/pod_manager.rb +212 -0
  53. data/lib/language_operator/cli/commands/system/helpers/template_loader.rb +57 -0
  54. data/lib/language_operator/cli/commands/system/helpers/template_validator.rb +174 -0
  55. data/lib/language_operator/cli/commands/system/schema.rb +92 -0
  56. data/lib/language_operator/cli/commands/system/synthesis_template.rb +151 -0
  57. data/lib/language_operator/cli/commands/system/synthesize.rb +224 -0
  58. data/lib/language_operator/cli/commands/system/validate_template.rb +130 -0
  59. data/lib/language_operator/cli/commands/tool/base.rb +271 -0
  60. data/lib/language_operator/cli/commands/tool/install.rb +255 -0
  61. data/lib/language_operator/cli/commands/tool/search.rb +69 -0
  62. data/lib/language_operator/cli/commands/tool/test.rb +115 -0
  63. data/lib/language_operator/cli/commands/use.rb +29 -6
  64. data/lib/language_operator/cli/errors/handler.rb +20 -17
  65. data/lib/language_operator/cli/errors/suggestions.rb +3 -5
  66. data/lib/language_operator/cli/errors/thor_errors.rb +55 -0
  67. data/lib/language_operator/cli/formatters/code_formatter.rb +4 -11
  68. data/lib/language_operator/cli/formatters/log_formatter.rb +8 -15
  69. data/lib/language_operator/cli/formatters/progress_formatter.rb +6 -8
  70. data/lib/language_operator/cli/formatters/status_formatter.rb +26 -7
  71. data/lib/language_operator/cli/formatters/table_formatter.rb +47 -36
  72. data/lib/language_operator/cli/formatters/value_formatter.rb +75 -0
  73. data/lib/language_operator/cli/helpers/cluster_context.rb +5 -3
  74. data/lib/language_operator/cli/helpers/kubeconfig_validator.rb +2 -1
  75. data/lib/language_operator/cli/helpers/label_utils.rb +97 -0
  76. data/lib/language_operator/{ux/concerns/provider_helpers.rb → cli/helpers/provider_helper.rb} +10 -29
  77. data/lib/language_operator/cli/helpers/schedule_builder.rb +21 -1
  78. data/lib/language_operator/cli/helpers/user_prompts.rb +19 -11
  79. data/lib/language_operator/cli/helpers/ux_helper.rb +538 -0
  80. data/lib/language_operator/{ux/concerns/input_validation.rb → cli/helpers/validation_helper.rb} +13 -66
  81. data/lib/language_operator/cli/main.rb +50 -40
  82. data/lib/language_operator/cli/templates/tools/generic.yaml +3 -0
  83. data/lib/language_operator/cli/wizards/agent_wizard.rb +12 -20
  84. data/lib/language_operator/cli/wizards/model_wizard.rb +271 -0
  85. data/lib/language_operator/cli/wizards/quickstart_wizard.rb +8 -34
  86. data/lib/language_operator/client/base.rb +28 -0
  87. data/lib/language_operator/client/config.rb +4 -1
  88. data/lib/language_operator/client/mcp_connector.rb +1 -1
  89. data/lib/language_operator/config/cluster_config.rb +3 -2
  90. data/lib/language_operator/config.rb +38 -11
  91. data/lib/language_operator/constants/kubernetes_labels.rb +80 -0
  92. data/lib/language_operator/constants.rb +13 -0
  93. data/lib/language_operator/dsl/http.rb +127 -10
  94. data/lib/language_operator/dsl.rb +153 -6
  95. data/lib/language_operator/errors.rb +50 -0
  96. data/lib/language_operator/kubernetes/client.rb +11 -6
  97. data/lib/language_operator/kubernetes/resource_builder.rb +58 -84
  98. data/lib/language_operator/templates/schema/agent_dsl_openapi.yaml +1 -1
  99. data/lib/language_operator/templates/schema/agent_dsl_schema.json +1 -1
  100. data/lib/language_operator/type_coercion.rb +118 -34
  101. data/lib/language_operator/utils/secure_path.rb +74 -0
  102. data/lib/language_operator/utils.rb +7 -0
  103. data/lib/language_operator/validators.rb +54 -2
  104. data/lib/language_operator/version.rb +1 -1
  105. data/synth/001/Makefile +10 -2
  106. data/synth/001/agent.rb +16 -15
  107. data/synth/001/output.log +27 -10
  108. data/synth/002/Makefile +10 -2
  109. data/synth/003/Makefile +1 -1
  110. data/synth/003/README.md +205 -133
  111. data/synth/003/agent.optimized.rb +66 -0
  112. data/synth/003/agent.synthesized.rb +41 -0
  113. metadata +111 -35
  114. data/docs/dsl/agent-reference.md +0 -604
  115. data/docs/dsl/mcp-integration.md +0 -1177
  116. data/docs/dsl/webhooks.md +0 -932
  117. data/docs/dsl/workflows.md +0 -744
  118. data/lib/language_operator/cli/commands/agent.rb +0 -1712
  119. data/lib/language_operator/cli/commands/model.rb +0 -366
  120. data/lib/language_operator/cli/commands/system.rb +0 -1259
  121. data/lib/language_operator/cli/commands/tool.rb +0 -654
  122. data/lib/language_operator/cli/formatters/optimization_formatter.rb +0 -226
  123. data/lib/language_operator/cli/helpers/pastel_helper.rb +0 -24
  124. data/lib/language_operator/learning/adapters/base_adapter.rb +0 -149
  125. data/lib/language_operator/learning/adapters/jaeger_adapter.rb +0 -221
  126. data/lib/language_operator/learning/adapters/signoz_adapter.rb +0 -435
  127. data/lib/language_operator/learning/adapters/tempo_adapter.rb +0 -239
  128. data/lib/language_operator/learning/optimizer.rb +0 -319
  129. data/lib/language_operator/learning/pattern_detector.rb +0 -260
  130. data/lib/language_operator/learning/task_synthesizer.rb +0 -288
  131. data/lib/language_operator/learning/trace_analyzer.rb +0 -285
  132. data/lib/language_operator/templates/task_synthesis.tmpl +0 -98
  133. data/lib/language_operator/ux/base.rb +0 -81
  134. data/lib/language_operator/ux/concerns/README.md +0 -155
  135. data/lib/language_operator/ux/concerns/headings.rb +0 -90
  136. data/lib/language_operator/ux/create_agent.rb +0 -255
  137. data/lib/language_operator/ux/create_model.rb +0 -267
  138. data/lib/language_operator/ux/quickstart.rb +0 -594
  139. data/synth/003/agent.rb +0 -41
  140. data/synth/003/output.log +0 -68
  141. /data/docs/{architecture/agent-runtime.md → agent-internals.md} +0 -0
  142. /data/docs/{dsl/chat-endpoints.md → chat-endpoints.md} +0 -0
  143. /data/docs/{dsl/SCHEMA_VERSION.md → schema-versioning.md} +0 -0
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: language-operator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.61
4
+ version: 0.1.62
5
5
  platform: ruby
6
6
  authors:
7
7
  - James Ryan
@@ -121,6 +121,20 @@ dependencies:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
123
  version: '1.26'
124
+ - !ruby/object:Gem::Dependency
125
+ name: lru_redux
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - "~>"
129
+ - !ruby/object:Gem::Version
130
+ version: '1.1'
131
+ type: :runtime
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - "~>"
136
+ - !ruby/object:Gem::Version
137
+ version: '1.1'
124
138
  - !ruby/object:Gem::Dependency
125
139
  name: faraday
126
140
  requirement: !ruby/object:Gem::Requirement
@@ -233,6 +247,20 @@ dependencies:
233
247
  - - "~>"
234
248
  - !ruby/object:Gem::Version
235
249
  version: '4.0'
250
+ - !ruby/object:Gem::Dependency
251
+ name: tty-box
252
+ requirement: !ruby/object:Gem::Requirement
253
+ requirements:
254
+ - - "~>"
255
+ - !ruby/object:Gem::Version
256
+ version: '0.7'
257
+ type: :runtime
258
+ prerelease: false
259
+ version_requirements: !ruby/object:Gem::Requirement
260
+ requirements:
261
+ - - "~>"
262
+ - !ruby/object:Gem::Version
263
+ version: '0.7'
236
264
  - !ruby/object:Gem::Dependency
237
265
  name: tty-prompt
238
266
  requirement: !ruby/object:Gem::Requirement
@@ -275,6 +303,20 @@ dependencies:
275
303
  - - "~>"
276
304
  - !ruby/object:Gem::Version
277
305
  version: '0.12'
306
+ - !ruby/object:Gem::Dependency
307
+ name: benchmark
308
+ requirement: !ruby/object:Gem::Requirement
309
+ requirements:
310
+ - - "~>"
311
+ - !ruby/object:Gem::Version
312
+ version: '0.4'
313
+ type: :development
314
+ prerelease: false
315
+ version_requirements: !ruby/object:Gem::Requirement
316
+ requirements:
317
+ - - "~>"
318
+ - !ruby/object:Gem::Version
319
+ version: '0.4'
278
320
  - !ruby/object:Gem::Dependency
279
321
  name: bundler
280
322
  requirement: !ruby/object:Gem::Requirement
@@ -289,6 +331,20 @@ dependencies:
289
331
  - - "~>"
290
332
  - !ruby/object:Gem::Version
291
333
  version: '2.0'
334
+ - !ruby/object:Gem::Dependency
335
+ name: memory_profiler
336
+ requirement: !ruby/object:Gem::Requirement
337
+ requirements:
338
+ - - "~>"
339
+ - !ruby/object:Gem::Version
340
+ version: '1.0'
341
+ type: :development
342
+ prerelease: false
343
+ version_requirements: !ruby/object:Gem::Requirement
344
+ requirements:
345
+ - - "~>"
346
+ - !ruby/object:Gem::Version
347
+ version: '1.0'
292
348
  - !ruby/object:Gem::Dependency
293
349
  name: rack-test
294
350
  requirement: !ruby/object:Gem::Requirement
@@ -395,13 +451,16 @@ executables:
395
451
  extensions: []
396
452
  extra_rdoc_files: []
397
453
  files:
454
+ - ".claude/commands/persona.md"
398
455
  - ".claude/commands/task.md"
399
456
  - ".rubocop.yml"
457
+ - ".rubocop_custom/use_ux_helper.rb"
400
458
  - CHANGELOG.md
401
459
  - Gemfile
402
460
  - Gemfile.lock
403
461
  - LICENSE
404
462
  - Makefile
463
+ - Makefile.common
405
464
  - README.md
406
465
  - Rakefile
407
466
  - bin/aictl
@@ -432,15 +491,20 @@ files:
432
491
  - components/tool/examples/example_tool.rb
433
492
  - components/tool/lib/langop/dsl.rb
434
493
  - components/tool/server.rb
435
- - docs/architecture/agent-runtime.md
436
- - docs/dsl/SCHEMA_VERSION.md
437
- - docs/dsl/agent-reference.md
438
- - docs/dsl/best-practices.md
439
- - docs/dsl/chat-endpoints.md
440
- - docs/dsl/constraints.md
441
- - docs/dsl/mcp-integration.md
442
- - docs/dsl/webhooks.md
443
- - docs/dsl/workflows.md
494
+ - docs/README.md
495
+ - docs/agent-internals.md
496
+ - docs/best-practices.md
497
+ - docs/chat-endpoints.md
498
+ - docs/cli-reference.md
499
+ - docs/constraints.md
500
+ - docs/how-agents-work.md
501
+ - docs/installation.md
502
+ - docs/quickstart.md
503
+ - docs/schema-versioning.md
504
+ - docs/understanding-generated-code.md
505
+ - docs/using-tools.md
506
+ - docs/webhooks.md
507
+ - examples/ux_helpers_demo.rb
444
508
  - lib/language_operator.rb
445
509
  - lib/language_operator/agent.rb
446
510
  - lib/language_operator/agent/base.rb
@@ -459,22 +523,44 @@ files:
459
523
  - lib/language_operator/agent/web_server.rb
460
524
  - lib/language_operator/agent/webhook_authenticator.rb
461
525
  - lib/language_operator/cli/base_command.rb
462
- - lib/language_operator/cli/commands/agent.rb
526
+ - lib/language_operator/cli/command_loader.rb
527
+ - lib/language_operator/cli/commands/agent/base.rb
528
+ - lib/language_operator/cli/commands/agent/code_operations.rb
529
+ - lib/language_operator/cli/commands/agent/helpers/cluster_llm_client.rb
530
+ - lib/language_operator/cli/commands/agent/helpers/code_parser.rb
531
+ - lib/language_operator/cli/commands/agent/helpers/synthesis_watcher.rb
532
+ - lib/language_operator/cli/commands/agent/learning.rb
533
+ - lib/language_operator/cli/commands/agent/lifecycle.rb
534
+ - lib/language_operator/cli/commands/agent/logs.rb
535
+ - lib/language_operator/cli/commands/agent/workspace.rb
463
536
  - lib/language_operator/cli/commands/cluster.rb
464
537
  - lib/language_operator/cli/commands/install.rb
465
- - lib/language_operator/cli/commands/model.rb
538
+ - lib/language_operator/cli/commands/model/base.rb
539
+ - lib/language_operator/cli/commands/model/test.rb
466
540
  - lib/language_operator/cli/commands/persona.rb
467
541
  - lib/language_operator/cli/commands/quickstart.rb
468
542
  - lib/language_operator/cli/commands/status.rb
469
- - lib/language_operator/cli/commands/system.rb
470
- - lib/language_operator/cli/commands/tool.rb
543
+ - lib/language_operator/cli/commands/system/base.rb
544
+ - lib/language_operator/cli/commands/system/exec.rb
545
+ - lib/language_operator/cli/commands/system/helpers/llm_synthesis.rb
546
+ - lib/language_operator/cli/commands/system/helpers/pod_manager.rb
547
+ - lib/language_operator/cli/commands/system/helpers/template_loader.rb
548
+ - lib/language_operator/cli/commands/system/helpers/template_validator.rb
549
+ - lib/language_operator/cli/commands/system/schema.rb
550
+ - lib/language_operator/cli/commands/system/synthesis_template.rb
551
+ - lib/language_operator/cli/commands/system/synthesize.rb
552
+ - lib/language_operator/cli/commands/system/validate_template.rb
553
+ - lib/language_operator/cli/commands/tool/base.rb
554
+ - lib/language_operator/cli/commands/tool/install.rb
555
+ - lib/language_operator/cli/commands/tool/search.rb
556
+ - lib/language_operator/cli/commands/tool/test.rb
471
557
  - lib/language_operator/cli/commands/use.rb
472
558
  - lib/language_operator/cli/errors/handler.rb
473
559
  - lib/language_operator/cli/errors/suggestions.rb
560
+ - lib/language_operator/cli/errors/thor_errors.rb
474
561
  - lib/language_operator/cli/formatters/code_formatter.rb
475
562
  - lib/language_operator/cli/formatters/log_formatter.rb
476
563
  - lib/language_operator/cli/formatters/log_style.rb
477
- - lib/language_operator/cli/formatters/optimization_formatter.rb
478
564
  - lib/language_operator/cli/formatters/progress_formatter.rb
479
565
  - lib/language_operator/cli/formatters/status_formatter.rb
480
566
  - lib/language_operator/cli/formatters/table_formatter.rb
@@ -483,13 +569,17 @@ files:
483
569
  - lib/language_operator/cli/helpers/cluster_validator.rb
484
570
  - lib/language_operator/cli/helpers/editor_helper.rb
485
571
  - lib/language_operator/cli/helpers/kubeconfig_validator.rb
486
- - lib/language_operator/cli/helpers/pastel_helper.rb
572
+ - lib/language_operator/cli/helpers/label_utils.rb
573
+ - lib/language_operator/cli/helpers/provider_helper.rb
487
574
  - lib/language_operator/cli/helpers/resource_dependency_checker.rb
488
575
  - lib/language_operator/cli/helpers/schedule_builder.rb
489
576
  - lib/language_operator/cli/helpers/user_prompts.rb
577
+ - lib/language_operator/cli/helpers/ux_helper.rb
578
+ - lib/language_operator/cli/helpers/validation_helper.rb
490
579
  - lib/language_operator/cli/main.rb
491
580
  - lib/language_operator/cli/templates/tools/generic.yaml
492
581
  - lib/language_operator/cli/wizards/agent_wizard.rb
582
+ - lib/language_operator/cli/wizards/model_wizard.rb
493
583
  - lib/language_operator/cli/wizards/quickstart_wizard.rb
494
584
  - lib/language_operator/client.rb
495
585
  - lib/language_operator/client/base.rb
@@ -501,6 +591,7 @@ files:
501
591
  - lib/language_operator/config/tool_patterns.yaml
502
592
  - lib/language_operator/config/tool_registry.rb
503
593
  - lib/language_operator/constants.rb
594
+ - lib/language_operator/constants/kubernetes_labels.rb
504
595
  - lib/language_operator/dsl.rb
505
596
  - lib/language_operator/dsl/adapter.rb
506
597
  - lib/language_operator/dsl/agent_context.rb
@@ -525,14 +616,6 @@ files:
525
616
  - lib/language_operator/instrumentation/task_tracer.rb
526
617
  - lib/language_operator/kubernetes/client.rb
527
618
  - lib/language_operator/kubernetes/resource_builder.rb
528
- - lib/language_operator/learning/adapters/base_adapter.rb
529
- - lib/language_operator/learning/adapters/jaeger_adapter.rb
530
- - lib/language_operator/learning/adapters/signoz_adapter.rb
531
- - lib/language_operator/learning/adapters/tempo_adapter.rb
532
- - lib/language_operator/learning/optimizer.rb
533
- - lib/language_operator/learning/pattern_detector.rb
534
- - lib/language_operator/learning/task_synthesizer.rb
535
- - lib/language_operator/learning/trace_analyzer.rb
536
619
  - lib/language_operator/loggable.rb
537
620
  - lib/language_operator/logger.rb
538
621
  - lib/language_operator/retry.rb
@@ -544,17 +627,10 @@ files:
544
627
  - lib/language_operator/templates/schema/CHANGELOG.md
545
628
  - lib/language_operator/templates/schema/agent_dsl_openapi.yaml
546
629
  - lib/language_operator/templates/schema/agent_dsl_schema.json
547
- - lib/language_operator/templates/task_synthesis.tmpl
548
630
  - lib/language_operator/tool_loader.rb
549
631
  - lib/language_operator/type_coercion.rb
550
- - lib/language_operator/ux/base.rb
551
- - lib/language_operator/ux/concerns/README.md
552
- - lib/language_operator/ux/concerns/headings.rb
553
- - lib/language_operator/ux/concerns/input_validation.rb
554
- - lib/language_operator/ux/concerns/provider_helpers.rb
555
- - lib/language_operator/ux/create_agent.rb
556
- - lib/language_operator/ux/create_model.rb
557
- - lib/language_operator/ux/quickstart.rb
632
+ - lib/language_operator/utils.rb
633
+ - lib/language_operator/utils/secure_path.rb
558
634
  - lib/language_operator/validators.rb
559
635
  - lib/language_operator/version.rb
560
636
  - synth/001/Makefile
@@ -569,9 +645,9 @@ files:
569
645
  - synth/002/output.log
570
646
  - synth/003/Makefile
571
647
  - synth/003/README.md
572
- - synth/003/agent.rb
648
+ - synth/003/agent.optimized.rb
649
+ - synth/003/agent.synthesized.rb
573
650
  - synth/003/agent.txt
574
- - synth/003/output.log
575
651
  - synth/README.md
576
652
  homepage: https://github.com/language-operator/language-operator
577
653
  licenses: