silas 0.2.0 → 0.3.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 (39) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +61 -1
  3. data/README.md +44 -0
  4. data/app/controllers/concerns/silas/api/serialization.rb +63 -0
  5. data/app/controllers/silas/api/base_controller.rb +24 -0
  6. data/app/controllers/silas/api/v1/approvals_controller.rb +35 -0
  7. data/app/controllers/silas/api/v1/sessions_controller.rb +39 -0
  8. data/app/controllers/silas/api/v1/streams_controller.rb +117 -0
  9. data/app/controllers/silas/api/v1/turns_controller.rb +32 -0
  10. data/app/controllers/silas/inbox/sessions_controller.rb +16 -3
  11. data/app/controllers/silas/inbox/turns_controller.rb +19 -0
  12. data/app/helpers/silas/inbox/trace_helper.rb +5 -0
  13. data/app/models/silas/session.rb +6 -0
  14. data/app/models/silas/turn.rb +9 -0
  15. data/app/views/layouts/silas/inbox.html.erb +6 -0
  16. data/app/views/silas/inbox/sessions/index.html.erb +11 -3
  17. data/app/views/silas/inbox/steps/_step.html.erb +3 -0
  18. data/app/views/silas/inbox/turns/_header.html.erb +12 -1
  19. data/config/routes.rb +23 -1
  20. data/db/migrate/20260725000001_add_provider_to_silas_steps.rb +13 -0
  21. data/lib/generators/silas/install/install_generator.rb +1 -0
  22. data/lib/generators/silas/install/templates/agent.yml +10 -1
  23. data/lib/generators/silas/install/templates/initializer.rb +5 -4
  24. data/lib/silas/agent.rb +4 -0
  25. data/lib/silas/chat.rb +2 -0
  26. data/lib/silas/configuration.rb +30 -34
  27. data/lib/silas/doctor.rb +155 -0
  28. data/lib/silas/engines/ruby_llm.rb +13 -2
  29. data/lib/silas/eval/assertions.rb +18 -0
  30. data/lib/silas/eval/transcript.rb +1 -0
  31. data/lib/silas/inbox/cost.rb +37 -13
  32. data/lib/silas/message_builder.rb +9 -2
  33. data/lib/silas/named_agent.rb +1 -0
  34. data/lib/silas/registry.rb +18 -8
  35. data/lib/silas/step_runner.rb +12 -0
  36. data/lib/silas/version.rb +1 -1
  37. data/lib/silas.rb +1 -0
  38. data/lib/tasks/silas_doctor.rake +17 -0
  39. metadata +10 -1
@@ -0,0 +1,17 @@
1
+ namespace :silas do
2
+ desc "Diagnose common Silas misconfigurations (provider key, queue adapter, model, migrations, tools, rescuer, cable, auth)"
3
+ task doctor: :environment do
4
+ glyph = { pass: "\e[32m✓\e[0m", warn: "\e[33m!\e[0m", fail: "\e[31m✗\e[0m" }
5
+ checks = Silas::Doctor.run
6
+
7
+ puts "silas:doctor — #{Silas::VERSION}"
8
+ checks.each do |check|
9
+ puts " #{glyph[check.status]} #{check.label}#{" — #{check.detail}" if check.detail.present?}"
10
+ end
11
+
12
+ failed = checks.count { |c| c.status == :fail }
13
+ warned = checks.count { |c| c.status == :warn }
14
+ puts "\n#{failed} failure(s), #{warned} warning(s)"
15
+ exit 1 if failed.positive?
16
+ end
17
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: silas
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel St Paul
@@ -111,6 +111,12 @@ files:
111
111
  - CHANGELOG.md
112
112
  - LICENSE
113
113
  - README.md
114
+ - app/controllers/concerns/silas/api/serialization.rb
115
+ - app/controllers/silas/api/base_controller.rb
116
+ - app/controllers/silas/api/v1/approvals_controller.rb
117
+ - app/controllers/silas/api/v1/sessions_controller.rb
118
+ - app/controllers/silas/api/v1/streams_controller.rb
119
+ - app/controllers/silas/api/v1/turns_controller.rb
114
120
  - app/controllers/silas/channels/approvals_controller.rb
115
121
  - app/controllers/silas/channels/base_controller.rb
116
122
  - app/controllers/silas/channels/slack_controller.rb
@@ -154,6 +160,7 @@ files:
154
160
  - db/migrate/20260716000002_add_cancel_requested_to_silas_turns.rb
155
161
  - db/migrate/20260721000001_create_silas_memories.rb
156
162
  - db/migrate/20260724000001_drop_agent_sdk_columns_from_silas_turns.rb
163
+ - db/migrate/20260725000001_add_provider_to_silas_steps.rb
157
164
  - lib/generators/silas/install/install_generator.rb
158
165
  - lib/generators/silas/install/templates/agent.yml
159
166
  - lib/generators/silas/install/templates/bin_ci
@@ -176,6 +183,7 @@ files:
176
183
  - lib/silas/connection.rb
177
184
  - lib/silas/connections.rb
178
185
  - lib/silas/delta_buffer.rb
186
+ - lib/silas/doctor.rb
179
187
  - lib/silas/engine.rb
180
188
  - lib/silas/engines/base.rb
181
189
  - lib/silas/engines/ruby_llm.rb
@@ -218,6 +226,7 @@ files:
218
226
  - lib/silas/tools/run_code.rb
219
227
  - lib/silas/version.rb
220
228
  - lib/tasks/silas_chat.rake
229
+ - lib/tasks/silas_doctor.rake
221
230
  - lib/tasks/silas_eval.rake
222
231
  - lib/tasks/silas_schedules.rake
223
232
  homepage: https://github.com/danielstpaul/silas