claude-evolve 1.11.7 → 1.11.9

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.
package/lib/ai-cli.sh CHANGED
@@ -151,6 +151,13 @@ $prompt"
151
151
  ai_output=$(timeout -k 30 600 opencode -m openrouter/z-ai/glm-4.7 run "$prompt" 2>&1)
152
152
  local ai_exit_code=$?
153
153
  ;;
154
+ glm-5)
155
+ local ai_output
156
+ # GLM-5: 744B MoE model, very cheap ($0.80/$2.56 per 1M tokens), 200K context
157
+ # Released Feb 2026 - scores 77.8% SWE-bench, MIT license
158
+ ai_output=$(timeout -k 30 600 opencode -m openrouter/z-ai/glm-5 run "$prompt" 2>&1)
159
+ local ai_exit_code=$?
160
+ ;;
154
161
  glm-zai)
155
162
  # GLM -- can be slow sometimes
156
163
  local ai_output
package/lib/config.sh CHANGED
@@ -58,8 +58,9 @@ DEFAULT_MEMORY_LIMIT_MB=12288
58
58
  DEFAULT_WORKER_MAX_CANDIDATES=3
59
59
 
60
60
  # Default LLM CLI configuration
61
- # Run: Kimi K2.5 is now the primary model (stronger than GLM-4.7 as of Jan 2025)
62
- DEFAULT_LLM_RUN="kimi-k2.5 kimi-k2.5 kimi-k2.5 glm-zai glm-zai gemini-3-flash codex-oss-local haiku"
61
+ # Run: GLM-5 is now the primary model (744B MoE, $0.80/M tokens, 77.8% SWE-bench)
62
+ # Kimi K2.5 and GLM-5 are both strong, cheap options as of Feb 2026
63
+ DEFAULT_LLM_RUN="glm-5 glm-5 glm-5 kimi-k2.5 kimi-k2.5 gemini-3-flash codex-oss-local haiku"
63
64
  # Ideate: Only agentic models that can edit files reliably
64
65
  # AIDEV-NOTE: Ideation REQUIRES file editing - non-agentic models (opencode run, codex) return text
65
66
  # but don't actually edit files. Only use claude/gemini CLI with -y flag or cursor-agent.
@@ -213,13 +213,16 @@ class IdeationStrategy(ABC):
213
213
  return ideas
214
214
  else:
215
215
  # AI returned but didn't edit the file - show what it returned
216
- output_preview = output[:500] if output else "(empty)"
217
- if '\n' in output_preview:
218
- # Show first few lines
219
- lines = output_preview.split('\n')[:5]
220
- output_preview = '\n'.join(lines)
221
- if len(output.split('\n')) > 5:
222
- output_preview += f"\n... ({len(output)} chars total)"
216
+ if output:
217
+ all_lines = output.split('\n')
218
+ if len(all_lines) > 5:
219
+ # Show last 5 lines (first lines are usually just the git warning banner)
220
+ lines = all_lines[-5:]
221
+ output_preview = f"... ({len(output)} chars total)\n" + '\n'.join(lines)
222
+ else:
223
+ output_preview = output[:500]
224
+ else:
225
+ output_preview = "(empty)"
223
226
 
224
227
  if parse_attempt < max_parse_retries - 1:
225
228
  print(f"[IDEATE] {model} didn't edit file (attempt {parse_attempt + 1}/{max_parse_retries})", file=sys.stderr, flush=True)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "claude-evolve",
3
- "version": "1.11.7",
3
+ "version": "1.11.9",
4
4
  "bin": {
5
5
  "claude-evolve": "bin/claude-evolve",
6
6
  "claude-evolve-main": "bin/claude-evolve-main",