ask-llm-providers 0.12.3 → 0.13.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 554eee7b98695fceb25acf92f23786ddaee0be24899dbd4491e6251e73967597
4
- data.tar.gz: c4e840723cb088cdd12c2fbb66c74f40c13dc467e49579b38ea95efb271d0f88
3
+ metadata.gz: eb3302be5ae8d8f06b099977ea396982deeb89b6d80838197eabbca2264ba3ea
4
+ data.tar.gz: 543ded04571baad5263bfd721a5cb4b5fffc7733d4bcafaa29368563f4b48e92
5
5
  SHA512:
6
- metadata.gz: '0692e7439d103d33615c8a6cd68e14e2e2b72a1756a866f2b9631db18abf7543e27214d7c96711909bb56a1b116125e6c574428ca32d81ae4e7e7c440cc5f26f'
7
- data.tar.gz: a0ab4e01caaae66d3957f5426efca70118dafa33562fff24acf6139e3e9bbcd6d2d931538e7e27baeefd3bb05c4d57e9592f3c4c69c8ee55a75191b904dd0739
6
+ metadata.gz: 43225bc5e3a0ce765d61cc8143f72539779c5cd7b459891d414045f7be2207978387cafa18d1568bae222968cf69fd4b8bf3af14053483c33b45c6460b53b7f4
7
+ data.tar.gz: 429242e279e722113022e0b8bc6519e31076d0c379fabdb0a76a154e5a6b2fa388a0301b6ffeddbcd678f0f905362ce3770a1385a11124ac509b58326d4796fa
data/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ ## [0.13.1] — 2026-09-05
2
+
3
+ ### Fixed
4
+
5
+ - **Command Code catalog now matches the live API.** The `/models` listing serves namespaced IDs (`xiaomi/mimo-v2.5`, `Qwen/Qwen3.8-27B`, `deepseek/deepseek-v4-flash`, …) rather than the short names from the plan's config snapshot; the earlier entry's IDs were rejected with "Model not supported on this endpoint". Catalog regenerated from the provider's `/models` response (67 models, capabilities kept conservative).
6
+
7
+ ## [0.13.0] — 2026-09-05
8
+
9
+ ### Added
10
+
11
+ - **Command Code provider entry + models.** `commandcode` in the OpenAI-compatible registry (`https://api.commandcode.ai/provider/v1`, env `COMMANDCODE_API_KEY`) plus catalog models: mimo-v2.5, mimo-v2.5-pro, deepseek/deepseek-v4-flash, deepseek/deepseek-v4-pro, qwen/qwen3.8-27b, claude-sonnet-4-6, and gpt-5.6-luna (flat-rate, riding the user's Command Code plan).
12
+
1
13
  ## [0.11.1] — 2026-08-07
2
14
 
3
15
  ### Added
data/README.md CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  All LLM providers for the ask-rb ecosystem in one gem. Implements the
4
4
  `Ask::Provider` interface from `ask-core` with a capabilities-based interface:
5
- 7 canonical provider classes plus 26 OpenAI-compatible registry entries,
5
+ 7 canonical provider classes plus 27 OpenAI-compatible registry entries,
6
6
  a bundled model catalog, and cost calculation. Providers auto-register and
7
7
  the model catalog auto-loads when the gem is required.
8
8
 
@@ -39,25 +39,26 @@ model.capabilities # => ["chat", "streaming", "tool_calls", ...]
39
39
  | Ollama (local) | none needed |
40
40
  | Mistral AI | `Ask::Auth.resolve(:mistral_api_key)` (env `MISTRAL_API_KEY`) |
41
41
  | Cloudflare Workers AI | `Ask::Auth.resolve(:cloudflare_api_key)` (env `CLOUDFLARE_API_KEY`) |
42
- | 26 OpenAI-compatible | per-provider `*_API_KEY` env var (e.g. `DEEPSEEK_API_KEY`, `GROQ_API_KEY`, `OPENROUTER_API_KEY`) |
42
+ | 27 OpenAI-compatible | per-provider `*_API_KEY` env var (e.g. `DEEPSEEK_API_KEY`, `GROQ_API_KEY`, `OPENROUTER_API_KEY`) |
43
43
 
44
44
  Credentials resolve through `Ask::Auth` in order: environment variables,
45
45
  `~/.ask/credentials.yml`, Rails credentials, then database and OAuth
46
46
  providers. Keys are read via `Ask::Auth.resolve(:<name>_api_key)`.
47
47
 
48
- The 26 OpenAI-compatible entries are registered from
48
+ The 27 OpenAI-compatible entries are registered from
49
49
  `Ask::LLM::OPENAI_COMPATIBLE`: DeepSeek, Groq, Together, Fireworks, Cerebras,
50
50
  xAI, Perplexity, DeepInfra, Anyscale, SambaNova, Nebius, Nvidia NIM, Friendli,
51
51
  Hyperbolic, Novita, Nscale, Featherless, AI/ML API, AI21, Meta, GitHub Models,
52
- OpenRouter, OpenCode, OpenCode Go, Mimo, and Moonshot. Each uses its own
52
+ OpenRouter, OpenCode, OpenCode Go, Mimo, Moonshot, and Command Code. Each uses its own
53
53
  `*_API_KEY` env var; note that `opencode_go` uses `OPENCODE_GO_API_KEY` (its
54
54
  own key, not `OPENCODE_API_KEY`).
55
55
 
56
56
  ## Model Catalog
57
57
 
58
58
  The gem bundles model metadata (capabilities, pricing, context windows,
59
- modalities) as JSON for 12 providers: openai, anthropic, gemini, vertex_ai,
60
- bedrock, deepseek, mistral, perplexity, xai, meta, moonshot, and nvidia_nim,
59
+ modalities) as JSON for 16 providers: openai, anthropic, gemini, vertex_ai,
60
+ bedrock, deepseek, mistral, perplexity, xai, meta, moonshot, nvidia_nim,
61
+ github_copilot, openai_codex, opencode, and commandcode,
61
62
  with 400+ models in total.
62
63
 
63
64
  ```ruby
@@ -72,7 +73,7 @@ Ask::ModelCatalog.refresh! # fetch latest from models.dev
72
73
  | API | Purpose |
73
74
  |---|---|
74
75
  | `Ask::Providers::OpenAI/Anthropic/Google/Bedrock/Ollama/Mistral/Cloudflare` | Canonical provider classes |
75
- | `Ask::LLM::OPENAI_COMPATIBLE` | Registry data for the 26 compatible providers |
76
+ | `Ask::LLM::OPENAI_COMPATIBLE` | Registry data for the 27 compatible providers |
76
77
  | `Ask::LLM::Catalog.load!` / `refresh!` | Load bundled + user model data into `Ask::ModelCatalog` |
77
78
  | `Ask::LLM::Aliases.resolve("claude-sonnet-4")` | Short-name to canonical model ID resolution |
78
79
  | `Ask::LLM::CostCalculator.calculate(model, input_tokens:, output_tokens:)` | USD cost from model pricing |