ace-llm 0.32.1 → 0.38.2

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.
@@ -1,26 +1,59 @@
1
1
  name: togetherai
2
- last_synced: 2025-12-05
2
+ last_synced: 2026-04-24
3
3
  class: Ace::LLM::Organisms::TogetherAIClient
4
4
  gem: ace-llm
5
- context_limit: 128000 # Default context limit; varies by model
6
5
  models:
7
- - Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8
8
- - deepseek-ai/DeepSeek-V3
9
- - moonshotai/Kimi-K2-Instruct
10
- - openai/gpt-oss-120b
6
+ - MiniMaxAI/MiniMax-M2.5
7
+ - MiniMaxAI/MiniMax-M2.7
8
+ - Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8
9
+ - Qwen/Qwen3-Coder-Next-FP8
10
+ - Qwen/Qwen3.5-397B-A17B
11
+ - essentialai/Rnj-1-Instruct
12
+ - google/gemma-4-31B-it
13
+ - moonshotai/Kimi-K2.5
14
+ - moonshotai/Kimi-K2.6
15
+ - openai/gpt-oss-120b
16
+ - zai-org/GLM-5.1
17
+ limits:
18
+ default:
19
+ context: 262144
20
+ output: 262144
21
+ models:
22
+ MiniMaxAI/MiniMax-M2.5:
23
+ context: 204800
24
+ output: 131072
25
+ MiniMaxAI/MiniMax-M2.7:
26
+ context: 202752
27
+ output: 131072
28
+ Qwen/Qwen3.5-397B-A17B:
29
+ output: 130000
30
+ essentialai/Rnj-1-Instruct:
31
+ context: 32768
32
+ output: 32768
33
+ google/gemma-4-31B-it:
34
+ output: 131072
35
+ moonshotai/Kimi-K2.6:
36
+ output: 131000
37
+ openai/gpt-oss-120b:
38
+ context: 131072
39
+ output: 131072
40
+ zai-org/GLM-5.1:
41
+ context: 202752
42
+ output: 131072
11
43
  aliases:
12
44
  model:
13
- qwen: Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8
14
- deepseek: deepseek-ai/DeepSeek-V3
45
+ qwen-coder: Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8
46
+ deepseek: deepseek-ai/DeepSeek-V3.1
15
47
  kimi: moonshotai/Kimi-K2-Instruct
48
+ kimi-T: moonshotai/Kimi-K2-Thinking
16
49
  oss: openai/gpt-oss-120b
17
50
  api_key:
18
51
  env: TOGETHER_API_KEY
19
52
  required: true
20
53
  description: Together AI API key
21
54
  capabilities:
22
- - text_generation
23
- - streaming
55
+ - text_generation
56
+ - streaming
24
57
  default_options:
25
58
  temperature: 0.7
26
59
  max_tokens: 16384
@@ -1,14 +1,27 @@
1
1
  name: xai
2
- last_synced: 2025-12-06
2
+ last_synced: 2026-04-24
3
3
  class: Ace::LLM::Organisms::XAIClient
4
4
  gem: ace-llm
5
- context_limit: 131072 # Grok models have 131K context window
6
5
  models:
7
- - grok-4
8
- - grok-4-1-fast
9
- - grok-4-1-fast-non-reasoning
10
- - grok-4-fast-non-reasoning
11
- - grok-code-fast-1
6
+ - grok-4
7
+ - grok-4-1-fast
8
+ - grok-4-1-fast-non-reasoning
9
+ - grok-4-fast-non-reasoning
10
+ - grok-4.20-0309-non-reasoning
11
+ - grok-4.20-0309-reasoning
12
+ - grok-4.20-multi-agent-0309
13
+ - grok-code-fast-1
14
+ limits:
15
+ default:
16
+ context: 2000000
17
+ output: 30000
18
+ models:
19
+ grok-4:
20
+ context: 256000
21
+ output: 64000
22
+ grok-code-fast-1:
23
+ context: 256000
24
+ output: 10000
12
25
  aliases:
13
26
  global:
14
27
  grok: xai:grok-4
@@ -24,7 +37,7 @@ api_key:
24
37
  required: true
25
38
  description: x.ai API key
26
39
  capabilities:
27
- - text_generation
40
+ - text_generation
28
41
  default_options:
29
42
  temperature: 0.7
30
43
  max_tokens: 16384
@@ -1,18 +1,29 @@
1
1
  name: zai
2
- last_synced: 2026-02-27
2
+ last_synced: 2026-04-24
3
3
  class: Ace::LLM::Organisms::ZaiClient
4
4
  gem: ace-llm
5
- context_limit: 128000
6
5
  models:
7
- - glm-4.7-flashx
8
- - glm-4.7
9
- - glm-5
6
+ - glm-4.7
7
+ - glm-4.7-flashx
8
+ - glm-5
9
+ - glm-5-turbo
10
+ - glm-5.1
11
+ - glm-5v-turbo
12
+ limits:
13
+ default:
14
+ context: 200000
15
+ output: 131072
16
+ models:
17
+ glm-4.7:
18
+ context: 204800
19
+ glm-5:
20
+ context: 204800
10
21
  api_key:
11
22
  env: ZAI_API_KEY
12
23
  required: true
13
24
  description: Z.AI API key
14
25
  capabilities:
15
- - text_generation
26
+ - text_generation
16
27
  default_options:
17
28
  temperature: 0.7
18
29
  max_tokens: 16384
data/CHANGELOG.md CHANGED
@@ -6,6 +6,154 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
8
  ## [Unreleased]
9
+ ### Fixed
10
+ - Stubbed the Z.ai endpoint in query command CLI-routing tests so provider fallback no longer triggers blocked real HTTP calls during deterministic suite runs.
11
+
12
+ ## [0.38.2] - 2026-04-24
13
+
14
+ ### Technical
15
+ - Tightened `TS-LLM-002` verification so `ace-llm --list-providers` remains a discovery-only public-surface check instead of implying provider readiness.
16
+
17
+ ## [0.38.1] - 2026-04-24
18
+
19
+ ### Changed
20
+ - Clarified provider-listing documentation so `ace-llm --list-providers` is described as discovery plus setup hints, with setup readiness delegated to `ace-config doctor`.
21
+
22
+ ## [0.38.0] - 2026-04-24
23
+
24
+ ### Added
25
+ - Added shared resolved-model limit lookup so alias, role, and preset-expanded concrete provider/model targets can read merged context and output limits from provider config.
26
+
27
+ ### Changed
28
+ - Updated provider config validation and downstream callers to use the new `limits` schema and the expanded concrete model target instead of provider-wide limit assumptions.
29
+
30
+ ## [0.37.1] - 2026-04-23
31
+
32
+
33
+ ### Changed
34
+ - Added concurrent provider ping support in query execution and refreshed fallback orchestration behavior used by provider-driven query flows.
35
+ - Updated provider ping coverage so live query failures no longer block local diagnostics and stale fallback assumptions are exercised more explicitly.
36
+
37
+
38
+ ## [0.37.0] - 2026-04-23
39
+
40
+ ### Added
41
+ - Added `ace-llm --no-fallback` so callers can run ordinary prompts such as `ping` against the exact requested provider/model without fallback routing.
42
+
43
+ ## [0.36.5] - 2026-04-22
44
+
45
+ ### Fixed
46
+ - Stabilized deterministic verification by stubbing CLI query routing away from provider fallback HTTP calls and removing retry sleep from the provider/model fallback test.
47
+
48
+ ## [0.36.4] - 2026-04-22
49
+
50
+ ### Technical
51
+ - Added regression coverage to keep fresh `commit` role defaults from reintroducing stale `codex:gpt-5-mini` mappings while preserving `codex:mini` fallback behavior.
52
+
53
+ ## [0.36.3] - 2026-04-19
54
+
55
+ ### Fixed
56
+ - Fixed `ace-llm --interactive` startup for Codex aliases so the `/as-onboard` and related interactive alias prompts are launched with a valid subprocess command shape instead of aborting with a missing keyword.
57
+
58
+ ## [0.36.2] - 2026-04-19
59
+
60
+ ### Fixed
61
+ - Refreshed Codex model examples in README, usage, getting-started, demo, and help output from stale `codex:gpt-5` forms to the current stable `codex:gpt` alias and updated current provider alias guidance.
62
+
63
+ ## [0.36.1] - 2026-04-16
64
+
65
+ ### Fixed
66
+ - Switched the fresh-default `commit` role to prefer `google:lite` before CLI fallbacks so new `ace-config init` projects keep generated commit messages working when stale CLI aliases or unavailable local CLIs would otherwise break message generation.
67
+
68
+ ## [0.36.0] - 2026-04-15
69
+
70
+ ### Changed
71
+ - Reworked `TS-LLM-001` to public-surface goal style by tightening model-routing evidence checks, adding `TC-003` output-file-contract coverage, and prioritizing end-state/output artifacts over helper-only signals.
72
+ - Added `TS-LLM-002` provider-discovery coverage for `ace-llm --list-providers` so public setup-hint and provider-list output behavior is verified as a first-class E2E journey.
73
+
74
+ ### Technical
75
+ - Updated runtime dependency constraint to `ace-support-models ~> 0.11` after the coordinated support-models minor release.
76
+
77
+ ## [0.35.1] - 2026-04-15
78
+
79
+ ### Fixed
80
+ - Updated the `cli_args` threading feature tests to match the normalized array contract and stub provider preset loading directly, so `ace-test ace-llm` no longer fails on stale scalar expectations or package-local preset lookup assumptions.
81
+
82
+ ## [0.35.0] - 2026-04-15
83
+
84
+ ### Fixed
85
+ - Merged preset CLI args with explicit `--cli-args` so interactive launches keep provider autonomy presets such as `@yolo` while still accepting additional flags like `--no-alt-screen`.
86
+
87
+ ### Technical
88
+ - Threaded the current working directory and subprocess environment explicitly through `ace-llm --interactive` so provider-side startup policy hooks can make launch decisions from the real execution context.
89
+
90
+ ## [0.34.0] - 2026-04-15
91
+
92
+ ### Added
93
+ - Added `ace-llm --interactive` for supported CLI-backed providers so alias resolution, presets, thinking levels, and canonical skill handoff translation can launch the provider's native interactive terminal UI in one call.
94
+
95
+ ### Changed
96
+ - Documented interactive launch usage in the README, getting-started guide, and usage guide, including the tmux fork handoff pattern built around `/as-assign-drive <assignment>@<root>`.
97
+
98
+ ## [0.33.6] - 2026-04-13
99
+
100
+ ### Fixed
101
+ - Switched `TS-LLM-001` basic-query coverage to the explicit `--prompt` form so the scenario executes with canonical prompt input and no longer misclassifies dropped positional input as provider behavior.
102
+
103
+ ## [0.33.5] - 2026-04-13
104
+
105
+ ### Fixed
106
+ - Hardened `TS-LLM-001` basic-query execution by persisting the exact prompt and command artifacts so empty-input/provider-contract failures are distinguished from valid model responses.
107
+
108
+ ## [0.33.4] - 2026-04-13
109
+
110
+ ### Fixed
111
+ - Added the missing `ace-support-models` runtime dependency so `ace-llm --list-providers` no longer fails on fresh setups with `cannot load such file -- ace/support/models`.
112
+
113
+ ### Changed
114
+ - Updated quick-start onboarding guidance to include `ace-llm` in the base install command used before provider verification.
115
+
116
+ ## [0.33.3] - 2026-04-13
117
+
118
+ ### Fixed
119
+ - Added `codex:mini` as a fallback model for the `commit` role after `glite`, so role-based commit-message generation tries a secondary model instead of failing when `glite` is unavailable.
120
+
121
+
122
+ ### Technical
123
+ - Tightened the package version contract test to require a full semantic-version match instead of accepting partial matches.
124
+ ## [0.33.2] - 2026-04-13
125
+
126
+ ### Fixed
127
+ - Fixed provider credential availability checks so role-based model selection no longer crashes when a provider relies on fallback environment keys.
128
+
129
+ ### Technical
130
+ - Added regression coverage for `ClientRegistry#provider_api_key_present?` using Google fallback API key resolution.
131
+
132
+ ## [0.33.1] - 2026-04-13
133
+
134
+ ### Changed
135
+ - Completed the batch i05 migration follow-through for this package and aligned it with the restarted `fast` / `feat` / `e2e` verification model.
136
+
137
+ ### Technical
138
+ - Included in the coordinated assignment-driven patch release for batch i05 package updates.
139
+
140
+
141
+ ## [0.33.0] - 2026-04-12
142
+
143
+ ### Changed
144
+ - Migrated package tests to the restarted `fast` / `feat` / `e2e` contract:
145
+ - moved deterministic test suites from legacy top-level folders into `test/fast/`
146
+ - moved legacy `test/integration/` coverage into `test/feat/`
147
+ - reduced `TS-LLM-001` E2E scenario from 3 to 2 TCs and added an E2E decision record
148
+ - Updated README and package docs to teach only `ace-test ace-llm`, `ace-test ace-llm feat`, `ace-test ace-llm all`, and `ace-test-e2e ace-llm`.
149
+
150
+ ### Fixed
151
+ - Preserved full fallback target selectors (including provider/model + suffix context) across fallback attempts and rebuilt generation options per target instead of reusing stale primary-provider options.
152
+
153
+ ## [0.32.2] - 2026-04-10
154
+
155
+ ### Changed
156
+ - Updated the shared role catalog for restarted E2E execution with explicit `e2e-runner`, `e2e-verifier`, and `e2e-reporter` roles in the project-owned LLM configuration surface.
9
157
 
10
158
  ## [0.32.1] - 2026-04-01
11
159
 
data/README.md CHANGED
@@ -18,7 +18,20 @@
18
18
 
19
19
  ![ace-llm demo](docs/demo/ace-llm-getting-started.gif)
20
20
 
21
- `ace-llm` gives developers and coding agents one command surface for querying any LLM provider. Address models by alias (`gflash`, `sonnet`), explicit `provider:model` notation, or with thinking levels (`codex:gpt-5:high`) and execution presets (`cc@ro`). Pass prompts and system instructions inline or as file paths. Fallback routing and retry behavior keep prompt workflows resilient.
21
+ `ace-llm` gives developers and coding agents one command surface for querying any LLM provider. Address models by alias (`gflash`, `sonnet`), explicit `provider:model` notation, or with thinking levels (`codex:gpt:high`) and execution presets (`cc@ro`). Pass prompts and system instructions inline or as file paths, or start supported CLI providers in native interactive mode with `--interactive`. Fallback routing and retry behavior keep prompt workflows resilient.
22
+
23
+ ## Testing
24
+
25
+ Package-local verification contract:
26
+
27
+ ```bash
28
+ ace-test ace-llm
29
+ ace-test ace-llm feat
30
+ ace-test ace-llm all
31
+ ace-test-e2e ace-llm
32
+ ```
33
+
34
+ Deterministic coverage lives in `test/fast/` and `test/feat/`. Scenario assets stay in `test/e2e/`.
22
35
 
23
36
  ## How It Works
24
37
 
@@ -30,12 +43,16 @@
30
43
 
31
44
  **Switch providers with aliases** - use short names like `gflash`, `sonnet`, `opus` instead of full `provider:model` notation. Aliases resolve through versioned YAML in [`.ace-defaults/`](docs/usage.md).
32
45
 
33
- **Control reasoning depth** - append a thinking level (`codex:gpt-5:high`, `claude:sonnet:low`) to tune reasoning budgets. Supported CLI providers: `claude`, `codex` (levels: `low`, `medium`, `high`, `xhigh`).
46
+ **Control reasoning depth** - append a thinking level (`codex:gpt:high`, `claude:sonnet:low`) to tune reasoning budgets. Supported CLI providers: `claude`, `codex` (levels: `low`, `medium`, `high`, `xhigh`).
34
47
 
35
48
  **Run preset-driven prompts** - apply execution profiles with `@preset` or `--preset`. Built-in presets for CLI providers: `@ro` (read-only), `@rw` (read-write), `@yolo` (full autonomy). Supported by: `claude`, `codex`, `gemini`, `opencode`, `pi`.
36
49
 
50
+ **Launch real interactive agents** - use `--interactive` for supported CLI providers so alias resolution, presets, and skill translation still flow through `ace-llm`, but the provider starts its native terminal UI instead of one-shot print mode.
51
+
37
52
  **Build resilient prompt workflows** - configure fallback chains and retry behavior through the [config cascade](.ace-defaults/llm/config.yml) so transient provider issues do not block work.
38
53
 
54
+ **Check exact provider reachability** - use `ace-llm gemini:pro "ping" --no-fallback --timeout 15 --max-tokens 4` to verify the requested provider/model without fallback routing.
55
+
39
56
  **Power LLM-enhanced flows in sibling packages** - serve as the execution backend for [ace-git-commit](../ace-git-commit), [ace-idea](../ace-idea), [ace-review](../ace-review), [ace-sim](../ace-sim), [ace-prompt-prep](../ace-prompt-prep), and more.
40
57
 
41
58
  ---
data/exe/ace-llm CHANGED
@@ -18,7 +18,8 @@ args = ARGV.empty? ? ["--help"] : ARGV
18
18
 
19
19
  # Start ace-support-cli single-command entrypoint with exception-based exit code handling (per ADR-023)
20
20
  begin
21
- Ace::Support::Cli::Runner.new(Ace::LLM::CLI::Commands::Query).call(args: args)
21
+ exit_code = Ace::Support::Cli::Runner.new(Ace::LLM::CLI::Commands::Query).call(args: args)
22
+ exit(exit_code) if exit_code.to_i.positive?
22
23
  rescue Ace::Support::Cli::Error => e
23
24
  warn e.message
24
25
  exit(e.exit_code)