scout-ai 1.2.3 → 2.0.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.
- checksums.yaml +4 -4
- data/.vimproject +138 -50
- data/README.md +171 -290
- data/Rakefile +17 -1
- data/VERSION +1 -1
- data/doc/Improvements.md +325 -0
- data/doc/StartHere.md +110 -0
- data/doc/developer/Architecture.md +126 -0
- data/doc/developer/Backends.md +199 -0
- data/doc/developer/ChatLifecycle.md +183 -0
- data/doc/developer/DelegationInternals.md +295 -0
- data/doc/developer/DesignPrinciples.md +245 -0
- data/doc/developer/PromptProcessing.md +292 -0
- data/doc/developer/Provenance.md +317 -0
- data/doc/user/BuildingAgents.md +345 -0
- data/doc/user/Cookbook.md +333 -0
- data/doc/user/CoreConcepts.md +181 -0
- data/doc/user/Delegation.md +191 -0
- data/doc/user/GettingStarted.md +159 -0
- data/doc/user/ManagingContext.md +163 -0
- data/doc/user/MultiAgentWorkflows.md +256 -0
- data/doc/user/Python.md +159 -0
- data/doc/user/RunningInference.md +200 -0
- data/doc/user/ToolCalling.md +193 -0
- data/doc/user/WritingChats.md +197 -0
- data/lib/scout/llm/agent/chat.rb +61 -11
- data/lib/scout/llm/agent/delegate.rb +274 -65
- data/lib/scout/llm/agent/iterate.rb +2 -2
- data/lib/scout/llm/agent/save.rb +273 -0
- data/lib/scout/llm/agent/workflow.rb +164 -0
- data/lib/scout/llm/agent.rb +86 -61
- data/lib/scout/llm/ask.rb +62 -17
- data/lib/scout/llm/backends/anthropic.rb +9 -2
- data/lib/scout/llm/backends/bedrock.rb +15 -3
- data/lib/scout/llm/backends/default.rb +183 -99
- data/lib/scout/llm/backends/glm.rb +58 -0
- data/lib/scout/llm/backends/huggingface.rb +196 -26
- data/lib/scout/llm/backends/ollama.rb +13 -1
- data/lib/scout/llm/backends/openai.rb +0 -2
- data/lib/scout/llm/backends/openwebui.rb +20 -13
- data/lib/scout/llm/backends/relay.rb +22 -22
- data/lib/scout/llm/backends/responses.rb +1 -1
- data/lib/scout/llm/chat/agent_meta.rb +264 -0
- data/lib/scout/llm/chat/annotation.rb +39 -10
- data/lib/scout/llm/chat/parse.rb +28 -6
- data/lib/scout/llm/chat/persist.rb +25 -0
- data/lib/scout/llm/chat/process/clear.rb +41 -6
- data/lib/scout/llm/chat/process/files.rb +21 -6
- data/lib/scout/llm/chat/process/meta.rb +421 -34
- data/lib/scout/llm/chat/process/options.rb +21 -1
- data/lib/scout/llm/chat/process/tools.rb +56 -15
- data/lib/scout/llm/chat/process.rb +4 -0
- data/lib/scout/llm/chat/prompt/shorten_tools.rb +125 -0
- data/lib/scout/llm/chat/prompt/shorten_tools_epoch.rb +365 -0
- data/lib/scout/llm/chat/prompt.rb +48 -0
- data/lib/scout/llm/chat/provenance.rb +775 -0
- data/lib/scout/llm/chat/tool_calls.rb +76 -0
- data/lib/scout/llm/chat.rb +18 -2
- data/lib/scout/llm/embed.rb +11 -3
- data/lib/scout/llm/image.rb +86 -0
- data/lib/scout/llm/mcp.rb +10 -2
- data/lib/scout/llm/rag.rb +3 -3
- data/lib/scout/llm/tools/call.rb +160 -11
- data/lib/scout/llm/tools/knowledge_base.rb +1 -1
- data/lib/scout/llm/tools/workflow.rb +32 -16
- data/lib/scout/model/python/huggingface/causal.rb +23 -5
- data/lib/scout/model/python/huggingface.rb +2 -1
- data/lib/scout-ai.rb +1 -0
- data/python/README.md +197 -14
- data/python/scout_ai/huggingface/eval.py +245 -34
- data/python/tests/test_huggingface_eval.py +58 -0
- data/research/ChatAnalyst-required-changes.md +167 -0
- data/research/agent-delegation-analysis.md +810 -0
- data/research/agent-meta-provenance-integration-plan.md +622 -0
- data/research/agent-workflow-analysis.md +1120 -0
- data/research/backends-analysis.md +836 -0
- data/research/chat-core-analysis.md +946 -0
- data/research/chatanalyst-provenance/00-baseline.md +30 -0
- data/research/chatanalyst-provenance/01-repo-map.md +60 -0
- data/research/chatanalyst-provenance/02-event-reconstruction.md +55 -0
- data/research/chatanalyst-provenance/03-duplication-evidence.md +45 -0
- data/research/chatanalyst-provenance/04-tooling-root-cause.md +57 -0
- data/research/chatanalyst-provenance/05-fix-plan.md +46 -0
- data/research/chatanalyst-provenance/07-critic-review.md +25 -0
- data/research/chatanalyst-provenance/final-report.md +45 -0
- data/research/chatanalyst-provenance/resumption.md +37 -0
- data/research/coding-philosophy-analysis.md +928 -0
- data/research/commands-analysis.md +947 -0
- data/research/multi-agent-patterns-analysis.md +853 -0
- data/research/prompt-strategies-analysis.md +630 -0
- data/research/prov-verbosity-fix-notes.md +77 -0
- data/research/provenance-analysis.md +469 -0
- data/research/provenance-navigation-design.md +640 -0
- data/research/synthesis-report.md +487 -0
- data/research/tools-system-analysis.md +779 -0
- data/scout-ai.gemspec +100 -11
- data/scout_commands/agent/ask +13 -3
- data/scout_commands/agent/kb +2 -0
- data/scout_commands/llm/ask +11 -4
- data/scout_commands/llm/md +76 -0
- data/scout_commands/llm/process_queries +48 -0
- data/scout_commands/llm/prov +602 -0
- data/scout_commands/llm/word +71 -0
- data/scout_commands/workflow/mcp +43 -0
- data/share/word/reference.docx +0 -0
- data/test/etc/AI/mock.yaml +11 -0
- data/test/fixtures/backends/anthropic.json +19 -0
- data/test/fixtures/backends/anthropic_tool_use.json +24 -0
- data/test/fixtures/backends/bedrock.json +8 -0
- data/test/fixtures/backends/bedrock_embedding.json +3 -0
- data/test/fixtures/backends/bedrock_tool_use.json +17 -0
- data/test/fixtures/backends/ollama.json +16 -0
- data/test/fixtures/backends/ollama_tool_call.json +27 -0
- data/test/fixtures/backends/openai_chat.json +21 -0
- data/test/fixtures/backends/openai_chat_tool_call.json +31 -0
- data/test/fixtures/backends/responses.json +33 -0
- data/test/fixtures/backends/responses_tool_call.json +28 -0
- data/test/integration/README.md +32 -0
- data/test/integration/scout/llm/backends/test_endpoints.rb +34 -0
- data/test/integration/scout/llm/backends/test_openwebui.rb +61 -0
- data/test/integration/scout/llm/backends/test_relay.rb +52 -0
- data/test/integration/scout/llm/test_infrastructure.rb +74 -0
- data/test/{scout → integration/scout}/llm/test_mcp.rb +1 -1
- data/test/integration/scout/llm/tools/test_mcp.rb +42 -0
- data/test/integration/scout/model/test_base.rb +91 -0
- data/test/scout/llm/agent/test_chat.rb +8 -2
- data/test/scout/llm/agent/test_save.rb +413 -0
- data/test/scout/llm/agent/test_workflow.rb +110 -0
- data/test/scout/llm/backends/test_anthropic.rb +93 -10
- data/test/scout/llm/backends/test_bedrock.rb +118 -2
- data/test/scout/llm/backends/test_huggingface.rb +137 -42
- data/test/scout/llm/backends/test_ollama.rb +70 -20
- data/test/scout/llm/backends/test_openwebui.rb +42 -40
- data/test/scout/llm/backends/test_relay.rb +4 -2
- data/test/scout/llm/chat/agent_meta_fixtures.rb +131 -0
- data/test/scout/llm/chat/process/test_meta.rb +518 -0
- data/test/scout/llm/chat/process/test_normalize_usage.rb +183 -0
- data/test/scout/llm/chat/test_agent_meta.rb +357 -0
- data/test/scout/llm/chat/test_agent_meta_provenance.rb +467 -0
- data/test/scout/llm/chat/test_agent_meta_tokens.rb +594 -0
- data/test/scout/llm/chat/test_parse.rb +70 -15
- data/test/scout/llm/chat/test_prov_cli.rb +274 -0
- data/test/scout/llm/chat/test_provenance.rb +240 -0
- data/test/scout/llm/chat/test_tool_calls.rb +38 -0
- data/test/scout/llm/test_agent.rb +13 -36
- data/test/scout/llm/test_ask.rb +75 -52
- data/test/scout/llm/test_chat.rb +107 -13
- data/test/scout/llm/test_embed.rb +48 -0
- data/test/scout/llm/test_rag.rb +23 -16
- data/test/scout/llm/test_tools.rb +12 -1
- data/test/scout/llm/tools/test_knowledge_base.rb +0 -1
- data/test/scout/llm/tools/test_mcp.rb +5 -3
- data/test/scout/llm/tools/test_workflow.rb +23 -2
- data/test/scout/model/python/huggingface/causal/test_next_token.rb +11 -5
- data/test/scout/model/python/huggingface/test_causal.rb +9 -3
- data/test/scout/model/python/huggingface/test_classification.rb +11 -2
- data/test/scout/model/python/test_torch.rb +2 -0
- data/test/scout/model/python/torch/test_helpers.rb +4 -0
- data/test/scout/model/test_base.rb +4 -2
- data/test/support/availability.rb +231 -0
- data/test/support/fake_clients.rb +138 -0
- data/test/support/fixtures.rb +21 -0
- data/test/support/infrastructure_probes.rb +136 -0
- data/test/support/mock_backend.rb +215 -0
- data/test/test_helper.rb +32 -2
- metadata +99 -10
- data/doc/Agent.md +0 -327
- data/doc/Chat.md +0 -458
- data/doc/LLM.md +0 -340
- data/doc/RAG.md +0 -129
- data/scout_commands/documenter +0 -148
- data/test/scout/llm/backends/test_openai.rb +0 -192
- data/test/scout/llm/backends/test_responses.rb +0 -238
- data/test/scout/llm/test_parse.rb +0 -98
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6bf72e55ea7c1691cb13a5c2780e22d36d48fa36435804d3060f22b60bf98751
|
|
4
|
+
data.tar.gz: 45b25598880785543bd7d1e955d024e430296de513ad17983272cc9bb81312d6
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c409ce5d5a7fed4b9a04e4590afa0d66b5ead6396ae767a666238bcd0cde6c473e97dfae836285bf7a337c2206a71cbb42d0eafd582678e6b3ebf9259c225221
|
|
7
|
+
data.tar.gz: 0ab6fc73d7e3903c9194bfa793baa750641f414d1fc1b4aca6928425e3a7204f9871fa8f91b172fce1550a29002080b5ad3562cb80a447edf99f980d8a96a5bd
|
data/.vimproject
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
scout-ai=$PWD filter="*.rb *.rake Rakefile *.rdoc *.R *.sh *.js *.haml *.sass *.txt *.conf" {
|
|
2
2
|
README.md
|
|
3
|
+
USER_GUIDE.md
|
|
3
4
|
Rakefile
|
|
4
5
|
chats=chats filter="*"{
|
|
5
6
|
system=system{
|
|
6
|
-
scout-ai
|
|
7
|
-
}
|
|
8
|
-
doc=doc{
|
|
9
7
|
agent
|
|
10
|
-
|
|
11
|
-
model
|
|
12
|
-
model.analysis
|
|
8
|
+
scout-ai
|
|
13
9
|
}
|
|
14
10
|
refactor=refactor{
|
|
15
11
|
chat
|
|
@@ -28,35 +24,44 @@ scout-ai=$PWD filter="*.rb *.rake Rakefile *.rdoc *.R *.sh *.js *.haml *.sass *.
|
|
|
28
24
|
prev
|
|
29
25
|
rf.rb
|
|
30
26
|
tool
|
|
27
|
+
|
|
28
|
+
save_reponse
|
|
29
|
+
|
|
30
|
+
tokens
|
|
31
|
+
patch
|
|
32
|
+
relay
|
|
33
|
+
|
|
34
|
+
cpus.rb
|
|
31
35
|
}
|
|
32
36
|
web=web{
|
|
33
37
|
chat
|
|
34
38
|
cmd
|
|
35
39
|
web
|
|
36
40
|
}
|
|
37
|
-
|
|
38
41
|
develop=develop{
|
|
42
|
+
agent
|
|
43
|
+
agent_system
|
|
44
|
+
causalLM
|
|
45
|
+
chat
|
|
46
|
+
digest
|
|
47
|
+
finetuning
|
|
48
|
+
json_format
|
|
49
|
+
model
|
|
50
|
+
rf
|
|
51
|
+
scout-ai
|
|
39
52
|
training=training{
|
|
53
|
+
basics
|
|
54
|
+
data.tmp
|
|
55
|
+
intro
|
|
56
|
+
python
|
|
40
57
|
data=data{
|
|
58
|
+
main
|
|
59
|
+
next_token
|
|
60
|
+
test.rb
|
|
41
61
|
}
|
|
42
62
|
}
|
|
43
|
-
|
|
44
|
-
scout-ai
|
|
45
|
-
agent
|
|
46
63
|
}
|
|
47
|
-
|
|
48
|
-
log_reponse
|
|
49
|
-
test_log_resonse
|
|
50
|
-
|
|
51
|
-
test_prompt.rb
|
|
52
|
-
|
|
53
|
-
from_python
|
|
54
|
-
|
|
55
|
-
python_delegation
|
|
56
|
-
|
|
57
|
-
python_package
|
|
58
|
-
|
|
59
|
-
stderr_python
|
|
64
|
+
save_locations
|
|
60
65
|
}
|
|
61
66
|
lib=lib {
|
|
62
67
|
scout-ai.rb
|
|
@@ -67,57 +72,61 @@ scout-ai=$PWD filter="*.rb *.rake Rakefile *.rdoc *.R *.sh *.js *.haml *.sass *.
|
|
|
67
72
|
entity.rb
|
|
68
73
|
}
|
|
69
74
|
llm=llm{
|
|
75
|
+
ask.rb
|
|
76
|
+
embed.rb
|
|
77
|
+
image.rb
|
|
78
|
+
mcp.rb
|
|
79
|
+
rag.rb
|
|
70
80
|
utils.rb
|
|
71
81
|
chat.rb
|
|
72
82
|
chat=chat{
|
|
73
83
|
annotation.rb
|
|
74
84
|
parse.rb
|
|
85
|
+
persist.rb
|
|
75
86
|
process.rb
|
|
87
|
+
provenance.rb
|
|
88
|
+
tool_calls.rb
|
|
89
|
+
prompt.rb
|
|
90
|
+
prompt=prompt{
|
|
91
|
+
shorten_tools.rb
|
|
92
|
+
shorten_tools_epoch.rb
|
|
93
|
+
}
|
|
76
94
|
process=process{
|
|
77
|
-
tools.rb
|
|
78
|
-
files.rb
|
|
79
95
|
clear.rb
|
|
80
|
-
|
|
96
|
+
files.rb
|
|
81
97
|
meta.rb
|
|
98
|
+
options.rb
|
|
99
|
+
tools.rb
|
|
82
100
|
}
|
|
83
101
|
}
|
|
84
102
|
tools.rb
|
|
85
103
|
tools=tools{
|
|
104
|
+
call.rb
|
|
105
|
+
knowledge_base.rb
|
|
86
106
|
mcp.rb
|
|
87
107
|
workflow.rb
|
|
88
|
-
knowledge_base.rb
|
|
89
|
-
call.rb
|
|
90
108
|
}
|
|
91
|
-
|
|
92
109
|
backends=backends{
|
|
93
110
|
default.rb
|
|
94
111
|
|
|
95
|
-
|
|
96
|
-
openai.rb
|
|
97
|
-
ollama.rb
|
|
112
|
+
glm.rb
|
|
98
113
|
anthropic.rb
|
|
99
|
-
vllm.rb
|
|
100
|
-
|
|
101
|
-
openwebui.rb
|
|
102
|
-
|
|
103
114
|
bedrock.rb
|
|
104
115
|
huggingface.rb
|
|
116
|
+
ollama.rb
|
|
117
|
+
openai.rb
|
|
118
|
+
openwebui.rb
|
|
105
119
|
relay.rb
|
|
120
|
+
responses.rb
|
|
121
|
+
vllm.rb
|
|
106
122
|
}
|
|
107
|
-
|
|
108
|
-
ask.rb
|
|
109
|
-
|
|
110
|
-
embed.rb
|
|
111
|
-
|
|
112
|
-
rag.rb
|
|
113
|
-
|
|
114
|
-
mcp.rb
|
|
115
|
-
|
|
116
123
|
agent.rb
|
|
117
124
|
agent=agent{
|
|
118
125
|
chat.rb
|
|
119
|
-
iterate.rb
|
|
120
126
|
delegate.rb
|
|
127
|
+
iterate.rb
|
|
128
|
+
save.rb
|
|
129
|
+
workflow.rb
|
|
121
130
|
}
|
|
122
131
|
}
|
|
123
132
|
model=model{
|
|
@@ -176,10 +185,44 @@ scout-ai=$PWD filter="*.rb *.rake Rakefile *.rdoc *.R *.sh *.js *.haml *.sass *.
|
|
|
176
185
|
}
|
|
177
186
|
}
|
|
178
187
|
doc=doc filter="*"{
|
|
179
|
-
Agent.md
|
|
180
|
-
Chat.md
|
|
181
|
-
LLM.md
|
|
182
188
|
Model.md
|
|
189
|
+
Improvements.md
|
|
190
|
+
StartHere.md
|
|
191
|
+
user=user{
|
|
192
|
+
BuildingAgents.md
|
|
193
|
+
Cookbook.md
|
|
194
|
+
CoreConcepts.md
|
|
195
|
+
Delegation.md
|
|
196
|
+
GettingStarted.md
|
|
197
|
+
ManagingContext.md
|
|
198
|
+
MultiAgentWorkflows.md
|
|
199
|
+
Python.md
|
|
200
|
+
RunningInference.md
|
|
201
|
+
ToolCalling.md
|
|
202
|
+
WritingChats.md
|
|
203
|
+
}
|
|
204
|
+
developer=developer{
|
|
205
|
+
Architecture.md
|
|
206
|
+
Backends.md
|
|
207
|
+
ChatLifecycle.md
|
|
208
|
+
DelegationInternals.md
|
|
209
|
+
DesignPrinciples.md
|
|
210
|
+
PromptProcessing.md
|
|
211
|
+
Provenance.md
|
|
212
|
+
}
|
|
213
|
+
}
|
|
214
|
+
research=research filter="*"{
|
|
215
|
+
agent-delegation-analysis.md
|
|
216
|
+
agent-workflow-analysis.md
|
|
217
|
+
backends-analysis.md
|
|
218
|
+
chat-core-analysis.md
|
|
219
|
+
coding-philosophy-analysis.md
|
|
220
|
+
commands-analysis.md
|
|
221
|
+
multi-agent-patterns-analysis.md
|
|
222
|
+
prompt-strategies-analysis.md
|
|
223
|
+
provenance-analysis.md
|
|
224
|
+
synthesis-report.md
|
|
225
|
+
tools-system-analysis.md
|
|
183
226
|
}
|
|
184
227
|
test=test {
|
|
185
228
|
data=data filter="*"{
|
|
@@ -190,24 +233,69 @@ scout-ai=$PWD filter="*.rb *.rake Rakefile *.rdoc *.R *.sh *.js *.haml *.sass *.
|
|
|
190
233
|
parents
|
|
191
234
|
}
|
|
192
235
|
}
|
|
236
|
+
scout=scout{
|
|
237
|
+
llm=llm{
|
|
238
|
+
test_agent.rb
|
|
239
|
+
test_ask.rb
|
|
240
|
+
test_chat.rb
|
|
241
|
+
test_embed.rb
|
|
242
|
+
test_mcp.rb
|
|
243
|
+
test_parse.rb
|
|
244
|
+
test_rag.rb
|
|
245
|
+
test_tools.rb
|
|
246
|
+
test_utils.rb
|
|
247
|
+
chat=chat{
|
|
248
|
+
test_parse.rb
|
|
249
|
+
test_process.rb
|
|
250
|
+
process=process{
|
|
251
|
+
test_meta.rb
|
|
252
|
+
test_normalize_usage.rb
|
|
253
|
+
}
|
|
254
|
+
}
|
|
255
|
+
backends=backends{
|
|
256
|
+
test_anthropic.rb
|
|
257
|
+
test_bedrock.rb
|
|
258
|
+
test_huggingface.rb
|
|
259
|
+
test_ollama.rb
|
|
260
|
+
test_openai.rb
|
|
261
|
+
test_openwebui.rb
|
|
262
|
+
test_relay.rb
|
|
263
|
+
test_responses.rb
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
support=support{
|
|
268
|
+
availability.rb
|
|
269
|
+
fake_clients.rb
|
|
270
|
+
fixtures.rb
|
|
271
|
+
infrastructure_probes.rb
|
|
272
|
+
mock_backend.rb
|
|
273
|
+
}
|
|
193
274
|
test_helper.rb
|
|
194
275
|
}
|
|
195
276
|
bin=bin filter="*"{
|
|
196
277
|
scout-ai
|
|
197
278
|
}
|
|
198
279
|
scout_commands=scout_commands filter="*"{
|
|
199
|
-
documenter
|
|
200
280
|
llm=llm{
|
|
201
281
|
ask
|
|
202
282
|
json
|
|
203
283
|
template
|
|
204
284
|
process
|
|
285
|
+
process_queries
|
|
205
286
|
server
|
|
287
|
+
word
|
|
288
|
+
md
|
|
289
|
+
info
|
|
290
|
+
prov
|
|
206
291
|
}
|
|
207
292
|
agent=agent{
|
|
208
293
|
ask
|
|
209
294
|
kb
|
|
210
295
|
find
|
|
211
296
|
}
|
|
297
|
+
workflow=workflow{
|
|
298
|
+
mcp
|
|
299
|
+
}
|
|
212
300
|
}
|
|
213
301
|
}
|