active_harness 0.3.8 → 0.3.9
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.
- checksums.yaml +4 -4
- data/lib/active_harness/agent/goal_check.rb +26 -0
- data/lib/active_harness/agent/state.rb +90 -0
- data/lib/active_harness/agent.rb +734 -0
- data/lib/active_harness/core/errors.rb +11 -0
- data/lib/active_harness/pipeline/hooks.rb +1 -1
- data/lib/active_harness/providers/anthropic.rb +57 -8
- data/lib/active_harness/providers/base.rb +6 -0
- data/lib/active_harness/providers/deepseek.rb +7 -4
- data/lib/active_harness/providers/gpustack.rb +7 -4
- data/lib/active_harness/providers/groq.rb +7 -4
- data/lib/active_harness/providers/hetzner.rb +7 -4
- data/lib/active_harness/providers/mistral.rb +7 -4
- data/lib/active_harness/providers/ollama.rb +7 -4
- data/lib/active_harness/providers/ollama_cloud.rb +7 -4
- data/lib/active_harness/providers/openai.rb +7 -4
- data/lib/active_harness/providers/openrouter.rb +7 -4
- data/lib/active_harness/providers/tool_calling.rb +95 -0
- data/lib/active_harness/providers/xai.rb +7 -4
- data/lib/active_harness/railtie.rb +1 -1
- data/lib/active_harness/request/hooks.rb +1 -1
- data/lib/active_harness/request/providers.rb +15 -0
- data/lib/active_harness/request.rb +39 -7
- data/lib/active_harness/result.rb +4 -0
- data/lib/active_harness/tool/path_policy.rb +28 -0
- data/lib/active_harness/tool.rb +348 -0
- data/lib/active_harness/tribunal/hooks.rb +1 -1
- data/lib/active_harness.rb +4 -1
- data/lib/generators/active_harness/agent/agent_generator.rb +16 -0
- data/lib/generators/active_harness/agent/templates/agent.rb.tt +14 -0
- data/lib/generators/active_harness/goal/goal_generator.rb +16 -0
- data/lib/generators/active_harness/goal/templates/goal.rb.tt +14 -0
- data/lib/generators/active_harness/install/install_generator.rb +30 -25
- data/lib/generators/active_harness/install/templates/agents/files_agent.rb +39 -0
- data/lib/generators/active_harness/install/templates/concerns/agent_tracing.rb +36 -0
- data/lib/generators/active_harness/install/templates/concerns/pipeline_tracing.rb +28 -0
- data/lib/generators/active_harness/install/templates/concerns/request_tracing.rb +44 -0
- data/lib/generators/active_harness/install/templates/concerns/tool_tracing.rb +21 -0
- data/lib/generators/active_harness/install/templates/concerns/tracing_log.rb +18 -0
- data/lib/generators/active_harness/install/templates/concerns/tribunal_tracing.rb +28 -0
- data/lib/generators/active_harness/install/templates/controllers/ai_controller.rb +23 -2
- data/lib/generators/active_harness/install/templates/goals/answer_present_goal.rb +22 -0
- data/lib/generators/active_harness/install/templates/pipelines/support_pipeline.rb +8 -18
- data/lib/generators/active_harness/install/templates/prompts/files_prompt.rb +9 -0
- data/lib/generators/active_harness/install/templates/prompts/support_prompt.rb +3 -0
- data/lib/generators/active_harness/install/templates/requests/files_request.rb +18 -0
- data/lib/generators/active_harness/install/templates/requests/support_guard_request.rb +12 -0
- data/lib/generators/active_harness/install/templates/requests/support_request.rb +6 -0
- data/lib/generators/active_harness/install/templates/tools/ls_tool.rb +40 -0
- data/lib/generators/active_harness/install/templates/tools/read_file_tool.rb +43 -0
- data/lib/generators/active_harness/install/templates/tribunals/support_guard_tribunal.rb +7 -0
- data/lib/generators/active_harness/pipeline/templates/pipeline.rb.tt +5 -0
- data/lib/generators/active_harness/request/templates/request.rb.tt +2 -0
- data/lib/generators/active_harness/tool/templates/tool.rb.tt +22 -0
- data/lib/generators/active_harness/tool/tool_generator.rb +16 -0
- data/lib/generators/active_harness/tribunal/templates/tribunal.rb.tt +3 -0
- metadata +31 -7
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
require "rails/generators"
|
|
2
|
+
|
|
3
|
+
module ActiveHarness
|
|
4
|
+
module Generators
|
|
5
|
+
class ToolGenerator < Rails::Generators::NamedBase
|
|
6
|
+
source_root File.expand_path("templates", __dir__)
|
|
7
|
+
|
|
8
|
+
desc "Creates an ActiveHarness tool in app/ai/tools/"
|
|
9
|
+
|
|
10
|
+
def create_tool
|
|
11
|
+
template "tool.rb.tt",
|
|
12
|
+
"app/ai/tools/#{file_name}_tool.rb"
|
|
13
|
+
end
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
class <%= class_name %>Tribunal < ActiveHarness::Tribunal
|
|
2
|
+
# Requests that run in parallel on the same input.
|
|
2
3
|
requests <%= class_name %>Request
|
|
3
4
|
|
|
5
|
+
# Reduces the successful results to the verdict (true/false).
|
|
6
|
+
# Shortcuts: `verdict :unanimous { ... }` / `verdict :majority { ... }`.
|
|
4
7
|
process do |results|
|
|
5
8
|
results.all? { |r| r.processed["result"] == true }
|
|
6
9
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: active_harness
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.3.
|
|
4
|
+
version: 0.3.9
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- the-teacher
|
|
8
|
-
autorequire:
|
|
8
|
+
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-10-
|
|
11
|
+
date: 2026-10-22 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: concurrent-ruby
|
|
@@ -38,7 +38,7 @@ dependencies:
|
|
|
38
38
|
- - ">="
|
|
39
39
|
- !ruby/object:Gem::Version
|
|
40
40
|
version: '0'
|
|
41
|
-
description:
|
|
41
|
+
description:
|
|
42
42
|
email:
|
|
43
43
|
- the-teacher@github.com
|
|
44
44
|
executables: []
|
|
@@ -46,6 +46,9 @@ extensions: []
|
|
|
46
46
|
extra_rdoc_files: []
|
|
47
47
|
files:
|
|
48
48
|
- lib/active_harness.rb
|
|
49
|
+
- lib/active_harness/agent.rb
|
|
50
|
+
- lib/active_harness/agent/goal_check.rb
|
|
51
|
+
- lib/active_harness/agent/state.rb
|
|
49
52
|
- lib/active_harness/configuration.rb
|
|
50
53
|
- lib/active_harness/core/errors.rb
|
|
51
54
|
- lib/active_harness/core/hooks.rb
|
|
@@ -85,6 +88,7 @@ files:
|
|
|
85
88
|
- lib/active_harness/providers/openai.rb
|
|
86
89
|
- lib/active_harness/providers/openrouter.rb
|
|
87
90
|
- lib/active_harness/providers/perplexity.rb
|
|
91
|
+
- lib/active_harness/providers/tool_calling.rb
|
|
88
92
|
- lib/active_harness/providers/typesafe.rb
|
|
89
93
|
- lib/active_harness/providers/vercel.rb
|
|
90
94
|
- lib/active_harness/providers/vertexai.rb
|
|
@@ -101,19 +105,37 @@ files:
|
|
|
101
105
|
- lib/active_harness/request/providers.rb
|
|
102
106
|
- lib/active_harness/request/transcription.rb
|
|
103
107
|
- lib/active_harness/result.rb
|
|
108
|
+
- lib/active_harness/tool.rb
|
|
109
|
+
- lib/active_harness/tool/path_policy.rb
|
|
104
110
|
- lib/active_harness/tribunal.rb
|
|
105
111
|
- lib/active_harness/tribunal/dsl.rb
|
|
106
112
|
- lib/active_harness/tribunal/hooks.rb
|
|
107
113
|
- lib/active_harness/tribunal/processing.rb
|
|
114
|
+
- lib/generators/active_harness/agent/agent_generator.rb
|
|
115
|
+
- lib/generators/active_harness/agent/templates/agent.rb.tt
|
|
116
|
+
- lib/generators/active_harness/goal/goal_generator.rb
|
|
117
|
+
- lib/generators/active_harness/goal/templates/goal.rb.tt
|
|
108
118
|
- lib/generators/active_harness/install/install_generator.rb
|
|
119
|
+
- lib/generators/active_harness/install/templates/agents/files_agent.rb
|
|
120
|
+
- lib/generators/active_harness/install/templates/concerns/agent_tracing.rb
|
|
121
|
+
- lib/generators/active_harness/install/templates/concerns/pipeline_tracing.rb
|
|
122
|
+
- lib/generators/active_harness/install/templates/concerns/request_tracing.rb
|
|
123
|
+
- lib/generators/active_harness/install/templates/concerns/tool_tracing.rb
|
|
124
|
+
- lib/generators/active_harness/install/templates/concerns/tracing_log.rb
|
|
125
|
+
- lib/generators/active_harness/install/templates/concerns/tribunal_tracing.rb
|
|
109
126
|
- lib/generators/active_harness/install/templates/controllers/ai_controller.rb
|
|
127
|
+
- lib/generators/active_harness/install/templates/goals/answer_present_goal.rb
|
|
110
128
|
- lib/generators/active_harness/install/templates/initializers/active_harness.rb
|
|
111
129
|
- lib/generators/active_harness/install/templates/memory/app_memory.rb
|
|
112
130
|
- lib/generators/active_harness/install/templates/pipelines/support_pipeline.rb
|
|
131
|
+
- lib/generators/active_harness/install/templates/prompts/files_prompt.rb
|
|
113
132
|
- lib/generators/active_harness/install/templates/prompts/support_guard_prompt.rb
|
|
114
133
|
- lib/generators/active_harness/install/templates/prompts/support_prompt.rb
|
|
134
|
+
- lib/generators/active_harness/install/templates/requests/files_request.rb
|
|
115
135
|
- lib/generators/active_harness/install/templates/requests/support_guard_request.rb
|
|
116
136
|
- lib/generators/active_harness/install/templates/requests/support_request.rb
|
|
137
|
+
- lib/generators/active_harness/install/templates/tools/ls_tool.rb
|
|
138
|
+
- lib/generators/active_harness/install/templates/tools/read_file_tool.rb
|
|
117
139
|
- lib/generators/active_harness/install/templates/tribunals/support_guard_tribunal.rb
|
|
118
140
|
- lib/generators/active_harness/memory/memory_generator.rb
|
|
119
141
|
- lib/generators/active_harness/memory/templates/memory.rb.tt
|
|
@@ -127,13 +149,15 @@ files:
|
|
|
127
149
|
- lib/generators/active_harness/prompt/templates/prompt.rb.tt
|
|
128
150
|
- lib/generators/active_harness/request/request_generator.rb
|
|
129
151
|
- lib/generators/active_harness/request/templates/request.rb.tt
|
|
152
|
+
- lib/generators/active_harness/tool/templates/tool.rb.tt
|
|
153
|
+
- lib/generators/active_harness/tool/tool_generator.rb
|
|
130
154
|
- lib/generators/active_harness/tribunal/templates/tribunal.rb.tt
|
|
131
155
|
- lib/generators/active_harness/tribunal/tribunal_generator.rb
|
|
132
156
|
homepage: https://github.com/the-teacher/active_harness
|
|
133
157
|
licenses:
|
|
134
158
|
- MIT
|
|
135
159
|
metadata: {}
|
|
136
|
-
post_install_message:
|
|
160
|
+
post_install_message:
|
|
137
161
|
rdoc_options: []
|
|
138
162
|
require_paths:
|
|
139
163
|
- lib
|
|
@@ -148,8 +172,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
148
172
|
- !ruby/object:Gem::Version
|
|
149
173
|
version: '0'
|
|
150
174
|
requirements: []
|
|
151
|
-
rubygems_version: 3.
|
|
152
|
-
signing_key:
|
|
175
|
+
rubygems_version: 3.5.16
|
|
176
|
+
signing_key:
|
|
153
177
|
specification_version: 4
|
|
154
178
|
summary: DSL for describing and running resilient LLM requests with safety layers
|
|
155
179
|
test_files: []
|