brute_cli 0.1.0 → 0.1.1
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/exe/brute +12 -14
- data/lib/brute_cli/version.rb +5 -0
- data/lib/brute_cli.rb +1 -1
- metadata +2 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8505051f8c9895144293784e61c82810556a9a9e82896a7808a69c6ea28df7f1
|
|
4
|
+
data.tar.gz: f17b5dbe8a96c4a0c8960f9e871fce0190c54a06d1e52610ee2b1448c7dfaea0
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1ac361628483b1be32ce71fd2d4a140df73f4813be3636edc00e59ea4ad78fbf6fedb86c38083b3e28de39e517895fd300ffafe8fb9134ba6f822068bfb28f41
|
|
7
|
+
data.tar.gz: 80cbf082aceb6af2aeff93dbd589f56dc9722151bd8ff82abe68f071bea46360fa5ada02eaa9df50de9b38a5b7d19525bafe9eb6f8b163eabb7da7369dec4732
|
data/exe/brute
CHANGED
|
@@ -25,9 +25,12 @@ if options[:list]
|
|
|
25
25
|
exit
|
|
26
26
|
end
|
|
27
27
|
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
# Agent is created lazily on first prompt — no API key needed to boot.
|
|
29
|
+
session = Brute::Session.new(id: options[:session_id])
|
|
30
|
+
orch = nil
|
|
30
31
|
|
|
32
|
+
make_agent = -> {
|
|
33
|
+
return orch if orch
|
|
31
34
|
orch = Brute.agent(
|
|
32
35
|
cwd: options[:cwd],
|
|
33
36
|
session: session,
|
|
@@ -47,12 +50,9 @@ begin
|
|
|
47
50
|
end
|
|
48
51
|
},
|
|
49
52
|
)
|
|
50
|
-
|
|
51
53
|
session.restore(orch.context) if options[:session_id]
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
exit 1
|
|
55
|
-
end
|
|
54
|
+
orch
|
|
55
|
+
}
|
|
56
56
|
|
|
57
57
|
prompt = ARGV.join(" ")
|
|
58
58
|
prompt = $stdin.read.strip if prompt.empty? && !$stdin.tty?
|
|
@@ -66,21 +66,19 @@ begin
|
|
|
66
66
|
break if input.nil? || input.strip == "exit"
|
|
67
67
|
next if input.strip.empty?
|
|
68
68
|
puts
|
|
69
|
-
|
|
69
|
+
make_agent.call.run(input)
|
|
70
70
|
puts "\n\n"
|
|
71
71
|
end
|
|
72
72
|
else
|
|
73
|
-
|
|
73
|
+
make_agent.call.run(prompt)
|
|
74
74
|
puts
|
|
75
75
|
end
|
|
76
76
|
rescue Interrupt
|
|
77
77
|
$stderr.puts "\nAborted."
|
|
78
78
|
exit 130
|
|
79
|
-
rescue LLM::RateLimitError => e
|
|
80
|
-
BruteCLI.error(
|
|
81
|
-
|
|
82
|
-
rescue LLM::ServerError => e
|
|
83
|
-
BruteCLI.error("Provider returned a server error. #{e.message}")
|
|
79
|
+
rescue RuntimeError, LLM::RateLimitError, LLM::ServerError => e
|
|
80
|
+
BruteCLI.error(e.message)
|
|
81
|
+
$stderr.puts " #{e.backtrace.first}".red if ENV["BRUTE_DEBUG"]
|
|
84
82
|
exit 1
|
|
85
83
|
rescue => e
|
|
86
84
|
BruteCLI.error(e.message)
|
data/lib/brute_cli.rb
CHANGED
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: brute_cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.1.
|
|
4
|
+
version: 0.1.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Brute Contributors
|
|
@@ -74,6 +74,7 @@ extra_rdoc_files: []
|
|
|
74
74
|
files:
|
|
75
75
|
- exe/brute
|
|
76
76
|
- lib/brute_cli.rb
|
|
77
|
+
- lib/brute_cli/version.rb
|
|
77
78
|
licenses:
|
|
78
79
|
- MIT
|
|
79
80
|
metadata: {}
|