ruboto-ai 0.1.0 → 0.2.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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +35 -17
  3. data/lib/ruboto/version.rb +1 -1
  4. data/lib/ruboto.rb +19 -9
  5. metadata +5 -5
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: aab699c78829f06e755d96f99c0dfcb39053d209e4ee99d61f198a6c33b650c5
4
- data.tar.gz: be0851dcdfb649041a4c75bea567f3369253687e5a4e1fe562f1461c69343ee0
3
+ metadata.gz: b34d29d912432b977045c02753a4bfb75ec283ee6f14a58437f5ca1f5ccb8c63
4
+ data.tar.gz: 6f4624ec9fbd7dea37da0e87da4aa82765c4beb7d4d2b4554529eff1d4129948
5
5
  SHA512:
6
- metadata.gz: 6fb78c938b1bbc219b5debd6fcd1e0038a6bfbe176d0abada304aceed5379888274a2106f10e922f8edd63e3c4149d12ad0abad7dc0c0bea78882dc95f6db8f0
7
- data.tar.gz: 7846fad4648aca6329c9db9845624b8c4e2224e5f578c620fea1bae19528be5e2bffb3c07f1faedcbe04dc79f4af5f1c5513755d058ea62ed0955c811ed1f0dc
6
+ metadata.gz: 43b62c69cc8540c5c3c4883b82c3eda8a5b0d173908810dc9d3c27fbd24af4940edd422f9d9375eeeabb72adedc1b87d3f0ee717bf80c6926ac8eb6ba57192fe
7
+ data.tar.gz: 34020d32cc0b1dee5a04799900f29eda18b341f7af5d7e43770ab209b2cd0fe9c47561ef04d732347ae0aa04729db497e16587365c6bd09eb9dd9e3e75222e78
data/README.md CHANGED
@@ -22,7 +22,7 @@ gem install ruboto-ai
22
22
  ### From Source
23
23
 
24
24
  ```bash
25
- git clone https://github.com/akhilgautam/ruboto-ai.git
25
+ git clone https://github.com/akhil-gautam/ruboto-ai.git
26
26
  cd ruboto-ai
27
27
  gem build ruboto.gemspec
28
28
  gem install ruboto-ai-0.1.0.gem
@@ -62,15 +62,19 @@ $ ruboto-ai
62
62
 
63
63
  Select a model:
64
64
 
65
- 1. GPT-4o OpenAI flagship
66
- 2. GPT-4o Mini Fast & cheap
67
- 3. Claude Sonnet 4 Anthropic's latest
68
- 4. Claude 3.5 Sonnet Great for code
69
- 5. Gemini 2.0 Flash Google's fast model
70
- 6. Llama 3.3 70B Open source
71
- 7. DeepSeek Chat Strong reasoning
65
+ 1. Claude Sonnet 4.5 Anthropic's best
66
+ 2. Gemini 3 Flash Google's latest
67
+ 3. DeepSeek v3.2 Strong reasoning
68
+ 4. Grok Code Fast xAI coding model
69
+ 5. MiniMax M2.1 Versatile model
70
+ 6. Seed 1.6 ByteDance model
71
+ 7. GLM 4.7 Zhipu AI model
72
+ 8. MiMo v2 Flash Xiaomi (free)
73
+ 9. LFM 2.5 Thinking Liquid (free)
72
74
 
73
- Enter number (1-7):
75
+ Or enter any OpenRouter model ID (e.g., openai/gpt-4o)
76
+
77
+ Choice:
74
78
  ```
75
79
 
76
80
  Select a model by number, then start chatting.
@@ -179,15 +183,29 @@ Added try/catch with proper error handling. Tests still pass.
179
183
 
180
184
  ## Supported Models
181
185
 
186
+ ### Default Models
187
+
182
188
  | Model | Provider | Best For |
183
189
  |-------|----------|----------|
184
- | GPT-4o | OpenAI | General coding tasks |
185
- | GPT-4o Mini | OpenAI | Fast, cheap tasks |
186
- | Claude Sonnet 4 | Anthropic | Complex reasoning |
187
- | Claude 3.5 Sonnet | Anthropic | Code generation |
188
- | Gemini 2.0 Flash | Google | Fast responses |
189
- | Llama 3.3 70B | Meta | Open source option |
190
- | DeepSeek Chat | DeepSeek | Strong reasoning |
190
+ | Claude Sonnet 4.5 | Anthropic | Best overall |
191
+ | Gemini 3 Flash | Google | Fast responses |
192
+ | DeepSeek v3.2 | DeepSeek | Strong reasoning |
193
+ | Grok Code Fast | xAI | Code generation |
194
+ | MiniMax M2.1 | MiniMax | Versatile tasks |
195
+ | Seed 1.6 | ByteDance | General purpose |
196
+ | GLM 4.7 | Zhipu AI | Chinese + English |
197
+ | MiMo v2 Flash | Xiaomi | Free tier |
198
+ | LFM 2.5 Thinking | Liquid | Free tier |
199
+
200
+ ### Custom Models
201
+
202
+ You can use **any model** from [OpenRouter](https://openrouter.ai/models) by entering its ID directly:
203
+
204
+ ```
205
+ Choice: openai/gpt-4o
206
+ Choice: meta-llama/llama-3.3-70b-instruct
207
+ Choice: mistralai/mistral-large
208
+ ```
191
209
 
192
210
  ## Data Storage
193
211
 
@@ -207,7 +225,7 @@ Ruboto stores data in `~/.ruboto/`:
207
225
 
208
226
  ```bash
209
227
  # Clone the repo
210
- git clone https://github.com/akhilgautam/ruboto-ai.git
228
+ git clone https://github.com/akhil-gautam/ruboto-ai.git
211
229
  cd ruboto-ai
212
230
 
213
231
  # Run directly without installing
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Ruboto
4
- VERSION = "0.1.0"
4
+ VERSION = "0.2.1"
5
5
  end
data/lib/ruboto.rb CHANGED
@@ -13,13 +13,15 @@ module Ruboto
13
13
  API_URL = "https://openrouter.ai/api/v1/chat/completions"
14
14
 
15
15
  MODELS = [
16
- { id: "openai/gpt-4o", name: "GPT-4o", desc: "OpenAI flagship" },
17
- { id: "openai/gpt-4o-mini", name: "GPT-4o Mini", desc: "Fast & cheap" },
18
- { id: "anthropic/claude-sonnet-4", name: "Claude Sonnet 4", desc: "Anthropic's latest" },
19
- { id: "anthropic/claude-3.5-sonnet", name: "Claude 3.5 Sonnet", desc: "Great for code" },
20
- { id: "google/gemini-2.0-flash-001", name: "Gemini 2.0 Flash", desc: "Google's fast model" },
21
- { id: "meta-llama/llama-3.3-70b-instruct", name: "Llama 3.3 70B", desc: "Open source" },
22
- { id: "deepseek/deepseek-chat", name: "DeepSeek Chat", desc: "Strong reasoning" }
16
+ { id: "anthropic/claude-sonnet-4.5", name: "Claude Sonnet 4.5", desc: "Anthropic's best" },
17
+ { id: "google/gemini-3-flash-preview", name: "Gemini 3 Flash", desc: "Google's latest" },
18
+ { id: "deepseek/deepseek-v3.2", name: "DeepSeek v3.2", desc: "Strong reasoning" },
19
+ { id: "x-ai/grok-code-fast-1", name: "Grok Code Fast", desc: "xAI coding model" },
20
+ { id: "minimax/minimax-m2.1", name: "MiniMax M2.1", desc: "Versatile model" },
21
+ { id: "bytedance-seed/seed-1.6", name: "Seed 1.6", desc: "ByteDance model" },
22
+ { id: "z-ai/glm-4.7", name: "GLM 4.7", desc: "Zhipu AI model" },
23
+ { id: "xiaomi/mimo-v2-flash:free", name: "MiMo v2 Flash", desc: "Xiaomi (free)" },
24
+ { id: "liquid/lfm-2.5-1.2b-thinking:free", name: "LFM 2.5 Thinking", desc: "Liquid (free)" }
23
25
  ].freeze
24
26
 
25
27
  # ANSI colors
@@ -853,20 +855,28 @@ module Ruboto
853
855
  end
854
856
 
855
857
  puts
856
- print " #{DIM}Enter number (1-#{MODELS.length}):#{RESET} "
858
+ puts " #{DIM}Or enter any OpenRouter model ID (e.g., openai/gpt-4o)#{RESET}"
859
+ puts
860
+ print " #{DIM}Choice:#{RESET} "
857
861
 
858
862
  loop do
859
863
  input = gets&.strip
860
864
  return MODELS[0][:id] if input.nil? || input.empty?
861
865
 
866
+ # Check if it's a number selection
862
867
  num = input.to_i
863
868
  if num >= 1 && num <= MODELS.length
864
869
  selected = MODELS[num - 1]
865
870
  puts "\n #{GREEN}✓#{RESET} Using #{BOLD}#{selected[:name]}#{RESET}"
866
871
  puts
867
872
  return selected[:id]
873
+ elsif input.include?("/")
874
+ # Custom model ID (contains slash like "openai/gpt-4o")
875
+ puts "\n #{GREEN}✓#{RESET} Using #{BOLD}#{input}#{RESET}"
876
+ puts
877
+ return input
868
878
  else
869
- print " #{RED}Invalid choice.#{RESET} Enter 1-#{MODELS.length}: "
879
+ print " #{RED}Invalid.#{RESET} Enter 1-#{MODELS.length} or a model ID: "
870
880
  end
871
881
  end
872
882
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ruboto-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Akhil Gautam
@@ -23,13 +23,13 @@ files:
23
23
  - bin/ruboto-ai
24
24
  - lib/ruboto.rb
25
25
  - lib/ruboto/version.rb
26
- homepage: https://github.com/akhilgautam/ruboto-ai
26
+ homepage: https://github.com/akhil-gautam/ruboto-ai
27
27
  licenses:
28
28
  - MIT
29
29
  metadata:
30
- homepage_uri: https://github.com/akhilgautam/ruboto-ai
31
- source_code_uri: https://github.com/akhilgautam/ruboto-ai
32
- changelog_uri: https://github.com/akhilgautam/ruboto-ai/blob/main/CHANGELOG.md
30
+ homepage_uri: https://github.com/akhil-gautam/ruboto-ai
31
+ source_code_uri: https://github.com/akhil-gautam/ruboto-ai
32
+ changelog_uri: https://github.com/akhil-gautam/ruboto-ai/blob/main/CHANGELOG.md
33
33
  rdoc_options: []
34
34
  require_paths:
35
35
  - lib