robot_lab-rails 0.1.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 (58) hide show
  1. checksums.yaml +7 -0
  2. data/.envrc +1 -0
  3. data/.github/workflows/deploy-github-pages.yml +52 -0
  4. data/CHANGELOG.md +5 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +110 -0
  7. data/Rakefile +8 -0
  8. data/docs/examples/rails-application.md +419 -0
  9. data/docs/guides/rails-integration.md +681 -0
  10. data/docs/index.md +75 -0
  11. data/examples/18_rails/.envrc +3 -0
  12. data/examples/18_rails/.gitignore +5 -0
  13. data/examples/18_rails/Gemfile +11 -0
  14. data/examples/18_rails/README.md +48 -0
  15. data/examples/18_rails/Rakefile +4 -0
  16. data/examples/18_rails/app/controllers/application_controller.rb +4 -0
  17. data/examples/18_rails/app/controllers/chat_controller.rb +46 -0
  18. data/examples/18_rails/app/jobs/application_job.rb +4 -0
  19. data/examples/18_rails/app/jobs/robot_run_job.rb +19 -0
  20. data/examples/18_rails/app/models/application_record.rb +5 -0
  21. data/examples/18_rails/app/models/robot_lab_result.rb +36 -0
  22. data/examples/18_rails/app/models/robot_lab_thread.rb +23 -0
  23. data/examples/18_rails/app/robots/chat_robot.rb +14 -0
  24. data/examples/18_rails/app/tools/time_tool.rb +9 -0
  25. data/examples/18_rails/app/views/chat/_user_message.html.erb +1 -0
  26. data/examples/18_rails/app/views/chat/index.html.erb +67 -0
  27. data/examples/18_rails/app/views/layouts/application.html.erb +49 -0
  28. data/examples/18_rails/bin/dev +7 -0
  29. data/examples/18_rails/bin/rails +6 -0
  30. data/examples/18_rails/bin/setup +15 -0
  31. data/examples/18_rails/config/application.rb +33 -0
  32. data/examples/18_rails/config/cable.yml +2 -0
  33. data/examples/18_rails/config/database.yml +5 -0
  34. data/examples/18_rails/config/environment.rb +4 -0
  35. data/examples/18_rails/config/initializers/robot_lab.rb +3 -0
  36. data/examples/18_rails/config/routes.rb +6 -0
  37. data/examples/18_rails/config.ru +4 -0
  38. data/examples/18_rails/db/migrate/001_create_robot_lab_tables.rb +32 -0
  39. data/lib/generators/robot_lab/install_generator.rb +63 -0
  40. data/lib/generators/robot_lab/job_generator.rb +28 -0
  41. data/lib/generators/robot_lab/robot_generator.rb +40 -0
  42. data/lib/generators/robot_lab/templates/initializer.rb.tt +39 -0
  43. data/lib/generators/robot_lab/templates/job.rb.tt +21 -0
  44. data/lib/generators/robot_lab/templates/migration.rb.tt +32 -0
  45. data/lib/generators/robot_lab/templates/result_model.rb.tt +40 -0
  46. data/lib/generators/robot_lab/templates/robot.rb.tt +31 -0
  47. data/lib/generators/robot_lab/templates/robot_job.rb.tt +15 -0
  48. data/lib/generators/robot_lab/templates/robot_test.rb.tt +21 -0
  49. data/lib/generators/robot_lab/templates/routing_robot.rb.tt +42 -0
  50. data/lib/generators/robot_lab/templates/thread_model.rb.tt +27 -0
  51. data/lib/robot_lab/rails/version.rb +7 -0
  52. data/lib/robot_lab/rails.rb +10 -0
  53. data/lib/robot_lab/rails_integration/engine.rb +23 -0
  54. data/lib/robot_lab/rails_integration/job.rb +109 -0
  55. data/lib/robot_lab/rails_integration/railtie.rb +36 -0
  56. data/lib/robot_lab/rails_integration/turbo_stream_callbacks.rb +42 -0
  57. data/mkdocs.yml +117 -0
  58. metadata +158 -0
data/mkdocs.yml ADDED
@@ -0,0 +1,117 @@
1
+ site_name: robot_lab-rails
2
+ site_description: Rails integration for the RobotLab LLM agent framework
3
+ site_author: Dewayne VanHoozer
4
+ site_url: https://madbomber.github.io/robot_lab-rails
5
+ copyright: Copyright © 2025 Dewayne VanHoozer
6
+
7
+ repo_name: MadBomber/robot_lab-rails
8
+ repo_url: https://github.com/MadBomber/robot_lab-rails
9
+ edit_uri: edit/main/docs/
10
+
11
+ theme:
12
+ name: material
13
+
14
+ palette:
15
+ - scheme: default
16
+ primary: red
17
+ accent: amber
18
+ toggle:
19
+ icon: material/brightness-7
20
+ name: Switch to dark mode
21
+
22
+ - scheme: slate
23
+ primary: red
24
+ accent: amber
25
+ toggle:
26
+ icon: material/brightness-4
27
+ name: Switch to light mode
28
+
29
+ font:
30
+ text: Roboto
31
+ code: Roboto Mono
32
+
33
+ icon:
34
+ repo: fontawesome/brands/github
35
+ logo: material/train-car-container
36
+
37
+ features:
38
+ - navigation.instant
39
+ - navigation.tracking
40
+ - navigation.tabs
41
+ - navigation.tabs.sticky
42
+ - navigation.path
43
+ - navigation.indexes
44
+ - navigation.top
45
+ - navigation.footer
46
+ - toc.follow
47
+ - search.suggest
48
+ - search.highlight
49
+ - search.share
50
+ - header.autohide
51
+ - content.code.copy
52
+ - content.code.annotate
53
+ - content.tabs.link
54
+ - content.tooltips
55
+ - content.action.edit
56
+ - content.action.view
57
+
58
+ plugins:
59
+ - search:
60
+ separator: '[\s\-,:!=\[\]()"`/]+|\.(?!\d)|&[lg]t;|(?!\b)(?=[A-Z][a-z])'
61
+
62
+ markdown_extensions:
63
+ - abbr
64
+ - admonition
65
+ - attr_list
66
+ - def_list
67
+ - footnotes
68
+ - md_in_html
69
+ - tables
70
+ - toc:
71
+ permalink: true
72
+ title: On this page
73
+ - pymdownx.betterem:
74
+ smart_enable: all
75
+ - pymdownx.caret
76
+ - pymdownx.details
77
+ - pymdownx.emoji:
78
+ emoji_generator: !!python/name:material.extensions.emoji.to_svg
79
+ emoji_index: !!python/name:material.extensions.emoji.twemoji
80
+ - pymdownx.highlight:
81
+ anchor_linenums: true
82
+ line_spans: __span
83
+ pygments_lang_class: true
84
+ - pymdownx.inlinehilite
85
+ - pymdownx.magiclink:
86
+ repo_url_shorthand: true
87
+ user: MadBomber
88
+ repo: robot_lab-rails
89
+ normalize_issue_symbols: true
90
+ - pymdownx.mark
91
+ - pymdownx.smartsymbols
92
+ - pymdownx.superfences:
93
+ custom_fences:
94
+ - name: mermaid
95
+ class: mermaid
96
+ format: !!python/name:pymdownx.superfences.fence_code_format
97
+ - pymdownx.tabbed:
98
+ alternate_style: true
99
+ - pymdownx.tasklist:
100
+ custom_checkbox: true
101
+ - pymdownx.tilde
102
+
103
+ extra:
104
+ social:
105
+ - icon: fontawesome/brands/github
106
+ link: https://github.com/MadBomber/robot_lab-rails
107
+ name: robot_lab-rails on GitHub
108
+ - icon: fontawesome/solid/gem
109
+ link: https://rubygems.org/gems/robot_lab-rails
110
+ name: robot_lab-rails on RubyGems
111
+
112
+ nav:
113
+ - Home: index.md
114
+ - Guides:
115
+ - Rails Integration: guides/rails-integration.md
116
+ - Examples:
117
+ - Rails Application: examples/rails-application.md
metadata ADDED
@@ -0,0 +1,158 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: robot_lab-rails
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Dewayne VanHoozer
8
+ bindir: exe
9
+ cert_chain: []
10
+ date: 1980-01-02 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: robot_lab
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: railties
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '7.0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '7.0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: activejob
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '7.0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '7.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: activesupport
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '7.0'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '7.0'
68
+ description: Provides Rails Engine, Railtie, ActiveJob base class with Turbo Stream
69
+ support, persistence models, and generators for using robot_lab in Rails applications.
70
+ email:
71
+ - dewayne@vanhoozer.me
72
+ executables: []
73
+ extensions: []
74
+ extra_rdoc_files: []
75
+ files:
76
+ - ".envrc"
77
+ - ".github/workflows/deploy-github-pages.yml"
78
+ - CHANGELOG.md
79
+ - LICENSE.txt
80
+ - README.md
81
+ - Rakefile
82
+ - docs/examples/rails-application.md
83
+ - docs/guides/rails-integration.md
84
+ - docs/index.md
85
+ - examples/18_rails/.envrc
86
+ - examples/18_rails/.gitignore
87
+ - examples/18_rails/Gemfile
88
+ - examples/18_rails/README.md
89
+ - examples/18_rails/Rakefile
90
+ - examples/18_rails/app/controllers/application_controller.rb
91
+ - examples/18_rails/app/controllers/chat_controller.rb
92
+ - examples/18_rails/app/jobs/application_job.rb
93
+ - examples/18_rails/app/jobs/robot_run_job.rb
94
+ - examples/18_rails/app/models/application_record.rb
95
+ - examples/18_rails/app/models/robot_lab_result.rb
96
+ - examples/18_rails/app/models/robot_lab_thread.rb
97
+ - examples/18_rails/app/robots/chat_robot.rb
98
+ - examples/18_rails/app/tools/time_tool.rb
99
+ - examples/18_rails/app/views/chat/_user_message.html.erb
100
+ - examples/18_rails/app/views/chat/index.html.erb
101
+ - examples/18_rails/app/views/layouts/application.html.erb
102
+ - examples/18_rails/bin/dev
103
+ - examples/18_rails/bin/rails
104
+ - examples/18_rails/bin/setup
105
+ - examples/18_rails/config.ru
106
+ - examples/18_rails/config/application.rb
107
+ - examples/18_rails/config/cable.yml
108
+ - examples/18_rails/config/database.yml
109
+ - examples/18_rails/config/environment.rb
110
+ - examples/18_rails/config/initializers/robot_lab.rb
111
+ - examples/18_rails/config/routes.rb
112
+ - examples/18_rails/db/migrate/001_create_robot_lab_tables.rb
113
+ - lib/generators/robot_lab/install_generator.rb
114
+ - lib/generators/robot_lab/job_generator.rb
115
+ - lib/generators/robot_lab/robot_generator.rb
116
+ - lib/generators/robot_lab/templates/initializer.rb.tt
117
+ - lib/generators/robot_lab/templates/job.rb.tt
118
+ - lib/generators/robot_lab/templates/migration.rb.tt
119
+ - lib/generators/robot_lab/templates/result_model.rb.tt
120
+ - lib/generators/robot_lab/templates/robot.rb.tt
121
+ - lib/generators/robot_lab/templates/robot_job.rb.tt
122
+ - lib/generators/robot_lab/templates/robot_test.rb.tt
123
+ - lib/generators/robot_lab/templates/routing_robot.rb.tt
124
+ - lib/generators/robot_lab/templates/thread_model.rb.tt
125
+ - lib/robot_lab/rails.rb
126
+ - lib/robot_lab/rails/version.rb
127
+ - lib/robot_lab/rails_integration/engine.rb
128
+ - lib/robot_lab/rails_integration/job.rb
129
+ - lib/robot_lab/rails_integration/railtie.rb
130
+ - lib/robot_lab/rails_integration/turbo_stream_callbacks.rb
131
+ - mkdocs.yml
132
+ homepage: https://github.com/MadBomber/robot_lab-rails
133
+ licenses:
134
+ - MIT
135
+ metadata:
136
+ allowed_push_host: https://rubygems.org
137
+ homepage_uri: https://github.com/MadBomber/robot_lab-rails
138
+ source_code_uri: https://github.com/MadBomber/robot_lab-rails
139
+ changelog_uri: https://github.com/MadBomber/robot_lab-rails/blob/main/CHANGELOG.md
140
+ rubygems_mfa_required: 'true'
141
+ rdoc_options: []
142
+ require_paths:
143
+ - lib
144
+ required_ruby_version: !ruby/object:Gem::Requirement
145
+ requirements:
146
+ - - ">="
147
+ - !ruby/object:Gem::Version
148
+ version: 3.2.0
149
+ required_rubygems_version: !ruby/object:Gem::Requirement
150
+ requirements:
151
+ - - ">="
152
+ - !ruby/object:Gem::Version
153
+ version: '0'
154
+ requirements: []
155
+ rubygems_version: 4.0.11
156
+ specification_version: 4
157
+ summary: Rails integration for the robot_lab LLM agent framework
158
+ test_files: []