solid_agent 0.1.1 → 0.2.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 (90) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +68 -0
  3. data/LICENSE +21 -0
  4. data/README.md +209 -18
  5. data/Rakefile +22 -2
  6. data/docs/agent-md-spec.md +803 -0
  7. data/docs/parser-design.md +1369 -0
  8. data/docs/registry-api.md +882 -0
  9. data/examples/README.md +60 -0
  10. data/examples/manifests/changelog_writer.agent.md +81 -0
  11. data/examples/manifests/usage.rb +96 -0
  12. data/examples/memory_handoff/app/agents/researcher_agent.rb +36 -0
  13. data/examples/memory_handoff/app/agents/writer_agent.rb +41 -0
  14. data/examples/memory_handoff/usage.rb +45 -0
  15. data/examples/persistent_conversation/app/agents/support_agent.rb +59 -0
  16. data/examples/persistent_conversation/app/controllers/support_conversations_controller.rb +24 -0
  17. data/examples/persistent_conversation/app/views/agents/support/instructions.md.erb +8 -0
  18. data/examples/persistent_conversation/usage.rb +51 -0
  19. data/examples/reasoning/app/agents/analysis_agent.rb +52 -0
  20. data/examples/reasoning/usage.rb +52 -0
  21. data/examples/run_tracking/app/agents/report_agent.rb +30 -0
  22. data/examples/run_tracking/app/controllers/agent_runs_controller.rb +43 -0
  23. data/examples/run_tracking/app/jobs/document_analysis_job.rb +17 -0
  24. data/examples/run_tracking/app/services/document_analysis_run.rb +68 -0
  25. data/examples/run_tracking/usage.rb +85 -0
  26. data/examples/tool_streaming/app/agents/browser_agent.rb +65 -0
  27. data/examples/tool_streaming/app/channels/tool_status_channel.rb +24 -0
  28. data/examples/tool_streaming/app/views/browser_agent/tools/fetch_url.json.erb +15 -0
  29. data/examples/tool_streaming/usage.rb +47 -0
  30. data/lib/generators/solid_agent/agent/agent_generator.rb +2 -2
  31. data/lib/generators/solid_agent/agent/templates/agent.rb.erb +3 -3
  32. data/lib/generators/solid_agent/context/templates/context_model.rb.erb +50 -16
  33. data/lib/generators/solid_agent/context/templates/create_generations.rb.erb +8 -0
  34. data/lib/generators/solid_agent/context/templates/create_messages.rb.erb +4 -0
  35. data/lib/generators/solid_agent/context/templates/generation_model.rb.erb +11 -0
  36. data/lib/generators/solid_agent/install/install_generator.rb +9 -0
  37. data/lib/generators/solid_agent/install/templates/agent_context.rb.erb +60 -17
  38. data/lib/generators/solid_agent/install/templates/agent_generation.rb.erb +23 -6
  39. data/lib/generators/solid_agent/install/templates/agent_memory.rb.erb +51 -0
  40. data/lib/generators/solid_agent/install/templates/agent_memory_entry.rb.erb +12 -0
  41. data/lib/generators/solid_agent/install/templates/agent_run.rb.erb +122 -0
  42. data/lib/generators/solid_agent/install/templates/create_agent_generations.rb.erb +13 -0
  43. data/lib/generators/solid_agent/install/templates/create_agent_memories.rb.erb +35 -0
  44. data/lib/generators/solid_agent/install/templates/create_agent_messages.rb.erb +5 -0
  45. data/lib/generators/solid_agent/install/templates/create_agent_runs.rb.erb +46 -0
  46. data/lib/generators/solid_agent/manifest/manifest_generator.rb +209 -0
  47. data/lib/generators/solid_agent/manifest/templates/agent.md.erb +39 -0
  48. data/lib/generators/solid_agent/manifest/templates/prompt.erb +13 -0
  49. data/lib/generators/solid_agent/reasons/reasons_generator.rb +83 -0
  50. data/lib/generators/solid_agent/reasons/templates/add_reasoning_columns.rb.erb +12 -0
  51. data/lib/solid_agent/agent_manifest/agent_builder.rb +323 -0
  52. data/lib/solid_agent/agent_manifest/errors.rb +26 -0
  53. data/lib/solid_agent/agent_manifest/exporter_registry.rb +117 -0
  54. data/lib/solid_agent/agent_manifest/exporters/agent_md_exporter.rb +115 -0
  55. data/lib/solid_agent/agent_manifest/exporters/base_exporter.rb +152 -0
  56. data/lib/solid_agent/agent_manifest/exporters/crewai_exporter.rb +125 -0
  57. data/lib/solid_agent/agent_manifest/exporters/dotprompt_exporter.rb +92 -0
  58. data/lib/solid_agent/agent_manifest/input_schema.rb +154 -0
  59. data/lib/solid_agent/agent_manifest/manifest.rb +306 -0
  60. data/lib/solid_agent/agent_manifest/parser_registry.rb +185 -0
  61. data/lib/solid_agent/agent_manifest/parsers/agent_md_parser.rb +87 -0
  62. data/lib/solid_agent/agent_manifest/parsers/base_parser.rb +223 -0
  63. data/lib/solid_agent/agent_manifest/parsers/crewai_parser.rb +201 -0
  64. data/lib/solid_agent/agent_manifest/parsers/dotprompt_parser.rb +122 -0
  65. data/lib/solid_agent/agent_manifest/parsers/github_prompt_parser.rb +143 -0
  66. data/lib/solid_agent/agent_manifest/picoschema.rb +254 -0
  67. data/lib/solid_agent/agent_manifest/registry/auth.rb +103 -0
  68. data/lib/solid_agent/agent_manifest/registry/client.rb +384 -0
  69. data/lib/solid_agent/agent_manifest/resource.rb +103 -0
  70. data/lib/solid_agent/agent_manifest/tool.rb +160 -0
  71. data/lib/solid_agent/agent_manifest/validator.rb +368 -0
  72. data/lib/solid_agent/agent_manifest.rb +381 -0
  73. data/lib/solid_agent/has_context.rb +251 -30
  74. data/lib/solid_agent/has_memory.rb +136 -0
  75. data/lib/solid_agent/has_reasons.rb +230 -0
  76. data/lib/solid_agent/model_naming.rb +42 -0
  77. data/lib/solid_agent/model_pricing.rb +93 -0
  78. data/lib/solid_agent/reasonable/reason.rb +205 -0
  79. data/lib/solid_agent/reasonable.rb +181 -0
  80. data/lib/solid_agent/records/agent.rb +520 -0
  81. data/lib/solid_agent/records/agent_run.rb +520 -0
  82. data/lib/solid_agent/records/agent_template.rb +142 -0
  83. data/lib/solid_agent/records/agent_version.rb +141 -0
  84. data/lib/solid_agent/records/ownable.rb +130 -0
  85. data/lib/solid_agent/records.rb +152 -0
  86. data/lib/solid_agent/run_fingerprint.rb +51 -0
  87. data/lib/solid_agent/tool_cache.rb +91 -0
  88. data/lib/solid_agent/version.rb +1 -1
  89. data/lib/solid_agent.rb +70 -3
  90. metadata +87 -1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: solid_agent
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Justin Bowen
@@ -51,6 +51,20 @@ dependencies:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '7.0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: activemodel
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'
54
68
  description: SolidAgent extends ActiveAgent with database-backed prompt context management,
55
69
  declarative tool schemas, and real-time streaming updates. Provides has_context,
56
70
  has_tools, and streams_tool_updates concerns for building robust AI agents.
@@ -60,8 +74,34 @@ executables: []
60
74
  extensions: []
61
75
  extra_rdoc_files: []
62
76
  files:
77
+ - CHANGELOG.md
78
+ - LICENSE
63
79
  - README.md
64
80
  - Rakefile
81
+ - docs/agent-md-spec.md
82
+ - docs/parser-design.md
83
+ - docs/registry-api.md
84
+ - examples/README.md
85
+ - examples/manifests/changelog_writer.agent.md
86
+ - examples/manifests/usage.rb
87
+ - examples/memory_handoff/app/agents/researcher_agent.rb
88
+ - examples/memory_handoff/app/agents/writer_agent.rb
89
+ - examples/memory_handoff/usage.rb
90
+ - examples/persistent_conversation/app/agents/support_agent.rb
91
+ - examples/persistent_conversation/app/controllers/support_conversations_controller.rb
92
+ - examples/persistent_conversation/app/views/agents/support/instructions.md.erb
93
+ - examples/persistent_conversation/usage.rb
94
+ - examples/reasoning/app/agents/analysis_agent.rb
95
+ - examples/reasoning/usage.rb
96
+ - examples/run_tracking/app/agents/report_agent.rb
97
+ - examples/run_tracking/app/controllers/agent_runs_controller.rb
98
+ - examples/run_tracking/app/jobs/document_analysis_job.rb
99
+ - examples/run_tracking/app/services/document_analysis_run.rb
100
+ - examples/run_tracking/usage.rb
101
+ - examples/tool_streaming/app/agents/browser_agent.rb
102
+ - examples/tool_streaming/app/channels/tool_status_channel.rb
103
+ - examples/tool_streaming/app/views/browser_agent/tools/fetch_url.json.erb
104
+ - examples/tool_streaming/usage.rb
65
105
  - lib/generators/solid_agent/agent/agent_generator.rb
66
106
  - lib/generators/solid_agent/agent/templates/action.text.erb
67
107
  - lib/generators/solid_agent/agent/templates/agent.rb.erb
@@ -75,18 +115,64 @@ files:
75
115
  - lib/generators/solid_agent/install/install_generator.rb
76
116
  - lib/generators/solid_agent/install/templates/agent_context.rb.erb
77
117
  - lib/generators/solid_agent/install/templates/agent_generation.rb.erb
118
+ - lib/generators/solid_agent/install/templates/agent_memory.rb.erb
119
+ - lib/generators/solid_agent/install/templates/agent_memory_entry.rb.erb
78
120
  - lib/generators/solid_agent/install/templates/agent_message.rb.erb
121
+ - lib/generators/solid_agent/install/templates/agent_run.rb.erb
79
122
  - lib/generators/solid_agent/install/templates/create_agent_contexts.rb.erb
80
123
  - lib/generators/solid_agent/install/templates/create_agent_generations.rb.erb
124
+ - lib/generators/solid_agent/install/templates/create_agent_memories.rb.erb
81
125
  - lib/generators/solid_agent/install/templates/create_agent_messages.rb.erb
126
+ - lib/generators/solid_agent/install/templates/create_agent_runs.rb.erb
82
127
  - lib/generators/solid_agent/install/templates/initializer.rb.erb
128
+ - lib/generators/solid_agent/manifest/manifest_generator.rb
129
+ - lib/generators/solid_agent/manifest/templates/agent.md.erb
130
+ - lib/generators/solid_agent/manifest/templates/prompt.erb
131
+ - lib/generators/solid_agent/reasons/reasons_generator.rb
132
+ - lib/generators/solid_agent/reasons/templates/add_reasoning_columns.rb.erb
83
133
  - lib/generators/solid_agent/tool/templates/tool.json.erb
84
134
  - lib/generators/solid_agent/tool/tool_generator.rb
85
135
  - lib/solid_agent.rb
136
+ - lib/solid_agent/agent_manifest.rb
137
+ - lib/solid_agent/agent_manifest/agent_builder.rb
138
+ - lib/solid_agent/agent_manifest/errors.rb
139
+ - lib/solid_agent/agent_manifest/exporter_registry.rb
140
+ - lib/solid_agent/agent_manifest/exporters/agent_md_exporter.rb
141
+ - lib/solid_agent/agent_manifest/exporters/base_exporter.rb
142
+ - lib/solid_agent/agent_manifest/exporters/crewai_exporter.rb
143
+ - lib/solid_agent/agent_manifest/exporters/dotprompt_exporter.rb
144
+ - lib/solid_agent/agent_manifest/input_schema.rb
145
+ - lib/solid_agent/agent_manifest/manifest.rb
146
+ - lib/solid_agent/agent_manifest/parser_registry.rb
147
+ - lib/solid_agent/agent_manifest/parsers/agent_md_parser.rb
148
+ - lib/solid_agent/agent_manifest/parsers/base_parser.rb
149
+ - lib/solid_agent/agent_manifest/parsers/crewai_parser.rb
150
+ - lib/solid_agent/agent_manifest/parsers/dotprompt_parser.rb
151
+ - lib/solid_agent/agent_manifest/parsers/github_prompt_parser.rb
152
+ - lib/solid_agent/agent_manifest/picoschema.rb
153
+ - lib/solid_agent/agent_manifest/registry/auth.rb
154
+ - lib/solid_agent/agent_manifest/registry/client.rb
155
+ - lib/solid_agent/agent_manifest/resource.rb
156
+ - lib/solid_agent/agent_manifest/tool.rb
157
+ - lib/solid_agent/agent_manifest/validator.rb
86
158
  - lib/solid_agent/engine.rb
87
159
  - lib/solid_agent/has_context.rb
160
+ - lib/solid_agent/has_memory.rb
161
+ - lib/solid_agent/has_reasons.rb
88
162
  - lib/solid_agent/has_tools.rb
163
+ - lib/solid_agent/model_naming.rb
164
+ - lib/solid_agent/model_pricing.rb
165
+ - lib/solid_agent/reasonable.rb
166
+ - lib/solid_agent/reasonable/reason.rb
167
+ - lib/solid_agent/records.rb
168
+ - lib/solid_agent/records/agent.rb
169
+ - lib/solid_agent/records/agent_run.rb
170
+ - lib/solid_agent/records/agent_template.rb
171
+ - lib/solid_agent/records/agent_version.rb
172
+ - lib/solid_agent/records/ownable.rb
173
+ - lib/solid_agent/run_fingerprint.rb
89
174
  - lib/solid_agent/streams_tool_updates.rb
175
+ - lib/solid_agent/tool_cache.rb
90
176
  - lib/solid_agent/version.rb
91
177
  - sig/solid_agent.rbs
92
178
  homepage: https://docs.activeagents.ai/solid_agent